QGIS


TRI – Topographic Ruggedness Index w QGIS

GDALW tym poście przedstawię jak łatwo zastosować indeks chropowatości terenu (Topographic Ruggedness Index). Wskaźnik ten stosowany jest do pomiaru heterogeniczności, urozmaicenia („niejednorodności”) rzeźby terenu zgodnie z metodyką oparacowaną przez Riley et al. (1999).

Recepta:

  • QGIS
  • GDAL tools (więcej o instalacji i użytkowaniu GDAL – Tutaj)
  • DEM (NMT)
[important]TRI wyliczany jest dla każdego piksela na podstawie dodawania różnic wysokości w siatce pikseli sąsiadujących o wymiarach 3×3 px. Następnie wartości wynikowe klasyfikowane są w przedziały, zależnie od charakterystyki terenu badań.[/important]

Pierwszym krokiem jest dodanie do Qgis warstwy rastrowej reprezentującej wysokości powierzchni terenu. Aby to zrobić klikamy w górnym menu: Warstwa—>Dodaj warstwę rastrową—> a następnie odnajdujemy na dysku potrzebny plik. Po upewnieniu się, że mamy zainstalowaną wtyczkę GDAL, wybieramy w górnym menu: Raster—->Numeryczny Model Terenu. 

Naszym oczom ukaże się okno, w którym należy podać warstwę źródłową, wynikową oraz wybrać typ analizy i ustawić jej parametry. W oknie narzędzia dodajemy kolejno poszczególne klasy różnic wysokości wraz z ich etykietami. Klasy definiujemy wpisując wartości graniczne przedziałów, które w tym przypadku będą reprezentować stopień urozmaicenia rzeźby.

[notice]Prawidłowe ustawienie parametrów analizy wymaga dobrej znajomości morfologii badanego obszaru.[/notice]

Warstwa wynikowa zostaje automatycznie dodana do tabeli zawartości Qgis. Ostatnim krokiem jest wizualizacja wyników analizy. na tym etapie może na nowo zdefiniować klasy oraz ich reprezentacje. Pomocnym do tego narzędziem jest „Histogram”, który odnajdziemy we właściwościach nowo powstałej warstwy. Przedstawia on wykres częstości występowania poszczególnych wartości rastra. Widzimy, że wyraźnie dominują piksele o niskich wartościach a maksymalną wartością jest ok 25 m.

Przedziały i ich reprezentacje definiujemy w zakładce „Styl” gdzie w rubryce „Paleta” wybieramy opcję „Mapa kolorów”, a następnie przechodzimy do zakładki „Paleta” i ustawiamy parametry wyświetlania (razem z etykietami).

Następnie dla bardziej plastycznego zwizualizowania analizy możemy przy użyciu narzędzia GDAL wygenerować cieniowany model rzeźby , ustawić go poniżej warstwy TRI, i ustawić przeźroczystość na ok 35-55% zależnie od planowanego efektu.

Na pierwszy rzut oka wydaje się, że obliczenia dla indeksu są identyczne do obliczania spadków terenu. Jednak po kolejnej inspekcji można zauważyć, że minimalny i maksymalny zakres wartości wskazuje, że różne jednostki zostały wykorzystane.Wartość indeksu podawana jest w metrach.

Podsumowując, TRI obok TPI, spadków, ekspozycji, krzywizny stoków, jest jednym z podstawowych obliczeń stosowanych gównie do analiz geomorfologicznych, klasyfikacji form rzeźby. Jest również wykorzystywany do waloryzacji krajobrazu w oparciu o urozmaicenie rzeźby oraz wielu analiz pochodnych.

Kalibracja map Messtischblatt w QGIS

Stare mapy może i nie zastąpią wehikułu czasu, ale i tak ich przydatność jest ogromna. Poszukiwanie śladów dawnych fabryk, kolei, fortyfikacji, grodzisk ukrytych w lesie czy też zmian w użytkowaniu i pokryciu terenu 😉 – wszystko to wymaga posiadania archiwalnej mapy. Na szczęście w dobie internetu nie trzeba już szukać ich w bibliotekach i ryzykować zniszczenia zabytku – na ogół wszystko, co trzeba, znajduje się już w sieci. Jest jednak pewne „ale”…

Zwykle wraz z mapą na różnych serwerach dostępne są pliki kalibracyjne z rozszerzeniem .map. Jakość tej kalibracji jest lepsza lub gorsza, zawsze jednak będzie działać jedynie z OziExplorerem. Użycie takiego pliku w standardowym programie GIS skończy się porażką, bo jak większość neogeograficznych wynalazków jest zgodny jedynie sam ze sobą. Pozostaje więc zabrać się za kalibracje samemu.

Tym razem zajmę się niemieckimi mapami Messtischblatt w skali 1:25 000, pokrywającymi tereny włączone do Polski po II wojnie światowej. Pozyskać je można np. ze strony Archiwum Map Zachodniej Polski. Ich kalibracja jest o tyle łatwiejsza od obejmujących tereny II RP map WIG, że parametry odwzorowania, są na 100% pewne – mało tego, znajdują się w bazie EPSG!

W Messtischblattach zastosowano odwzorowanie zwane w krajach anglosaskich Transverse Mercator, a u nas – Gaussa-Krügera. Za model Ziemi posłużyła elipsoida Bessela. Terytorium III Rzeszy podzielono na 6 stref odwzorowawczych o szerokości 3 stopni, przy czym dla obszaru dzisiejszej Polski są to strefy 5 i 6. Granica pomiędzy nimi przebiega wzdłuż południka 16,44 E (w układzie WGS84). Dla strefy 5 mamy gotową definicję, którą można przywołać kodem EPSG: 31469. Tereny położone dalej na wschód wymagają wpisania własnej definicji strefy 6:

+proj=tmerc +lat_0=0 +lon_0=18 +k=1 +x_0=6500000 +y_0=0 +ellps=bessel +datum=potsdam +units=m +no_defs

Czasami zdarza się arkusz leżący w dwóch strefach. Poznamy to po załamaniu siatki oraz napisie „Ostgrenze des Gitterstreifes 15 | Westgrenze des Gitterstreifens 18” nad ramką. Wówczas oczywiście należy używać wyłącznie punktów kalibracyjnych w obrębie jednej strefy.

I tym sposobem możemy zabierać się za kalibrację, korzystając z oryginalnej siatki topograficznej. W QGIS służy do tego narzędzie Georeferencer, umieszczone w menu Raster (może być konieczne wcześniejsze włączenie w Zarządzaj wtyczkami). Pracę zaczynamy od wczytania surowego skanu – służy do tego ikona Wczytaj skan. Następnie należy powiększyć obraz tak, by zobaczyć ramkę i móc odczytać współrzędne. Nowe punkty wpasowania dodajemy ikoną Dodaj punkt , pojawi się okno z możliwością wpisania współrzędnych lub pobrania ich z istniejącej mapy:

Wprowadzanie punktów GCP

I tak do skutku, to znaczy – do wpisania odpowiedniej liczby punktów wpasowania. Pamiętać należy przy tym, że współrzędne siatki podane są w kilometrach – należy więc dopisać do nich na końcu 000. Jeśli mapa jest w dobrym stanie i prawidłowo zeskanowana, to właściwie wystarczą 4 punkty, dobrze jednak jest mieć ich więcej. Na koniec należy ustawić parametry transformacji:

Ustawienia transformacji

W większości przypadków wystarczy wielomian 1 stopnia, dla zniszczonych map trzeba użyć stopnia wyższego. Ustawiamy układ współrzędnych (strefa 5 – z kodu EPSG, strefa 6 – wklejając definicję), plik wyjściowy…

Teraz można by już uruchomić kalibrację, ale na wszelki wypadek zapiszmy punkty wpasowania – żeby nie zaczynać od początku w razie padnięcia QGISa.

Na zakończenie warto otrzymany raster transformować do jakiegoś współczesnego układu (opcja Raster – Zmień odwzorowanie) oraz odchudzić paletę kolorów (Raster – RGB na PCT) – wszak oryginał drukowano w 3 kolorach i absolutnie nie ma sensu marnować miejsca na zapis 24-bitowy.

Co to są wtyczki QGIS

QGIS QGIS nam się rozrasta… Jak w prawie każdej aplikacji open source, która jest tworzona przez społeczność, podstawową metodą dodawania nowych funkcjonalności są tzw. wtyczki (od angielskiego plugins). Wtyczki to nic innego jak napisane w odpowiedni sposób fragmenty kodu, które są umieszczone gdzieś w sieci. Można je łatwo pobrać i zainstalować rozszerzając funkcjonalność oprogramowania.

Jest to główna zaleta otwartego oprogramowania. Jednak z czasem, system wtyczek może stać się uciążliwy. Obecnie dla QGIS funkcjonuje ok. 700 wtyczek. Od bardzo prostych do całych zestawów narzędzi powstałych w celu wykonywania bardzo specyficznych analiz. Ich liczba gwałtownie wzrasta, więc użytkownicy mają coraz większe problemy z „ogarnięciem” ich zbioru. Ten wpis ma na celu usystematyzowanie wiedzy na temat wtyczek do QGIS.

QGIS – ogarnianie wtyczek.

Po zainstalowaniu QGIS w pasku menu znajduje się menu rozwijalne „Wtyczki”, z którego mamy możliwość obsługi wtyczek:

Na początku listy znajdują się najważniejsze pole, czyli „Zarządzaj wtyczkami”. Dalej jest konsola Pythona (to dla tych co znają Pythona i QGIS API i chcą obsługiwać QGIS z linii komend) i lista zainstalowanych oraz aktywnych wtyczek. Klikamy „Zarządzaj wtyczkami”:

Widzimy okno instalatora wtyczek. Każda linia to jedna wtyczka. Najważniejsze informacje to nazwa, wersja wtyczki oraz krótka informacja o niej… Skąd te wtyczki? Gdzie one fizycznie się znajdują? Każdy programista, który napisał wtyczkę umieszcza je w swoim repozytorium, czyli miejscu, które QGIS sprawdza za każdym razem przed uruchomieniem instalatora w poszukiwaniu nowości. Wystarczy podświetlić „wybrankę” i kliknąć „Zainstaluj”. W zdecydowanej większości przypadków wtyczka bez problemów się zainstaluje i będzie gotowa do użycia. Czasem trzeba doinstalować dodatkowe biblioteki, o czym instalator nas poinformuje. Jak tego dokonać? W przypadku używania instalatora OSGEO4W bardzo prosto – uruchomić instalator i zaznaczyć brakujące biblioteki do instalacji. W innym przypadku biblioteki trzeba ściągnąć na własną rękę i wrzucić do odpowiedniego katalogu na dysku.

Instalator wtyczek składa się z pięciu zakładek. Polecam odwiedzić zakładkę „Ustawienia”:

Proponuję odznaczyć opcję „Pokazuj wtyczki eksperymentalne” i „Pokazuj wtyczki niezalecane”. Co to oznacza? Poprzez instalatora będzie można zainstalować wtyczki, które uzyskały status oficjalnych i na 99% działają w sposób stabilny. Pozostałe wtyczki mogą powodować błędy w aplikacji i ich instalacja odbywa się już na własne ryzyko użytkownika.

Jeżeli już zainstalowaliśmy wtyczkę to możemy ją w dowolnej chwili dezaktywować lub aktywować na liście zainstalowanych wtyczek.

A teraz najważniejsze i to co sprawia najwięcej problemów…

Skąd brać informację o wtyczkach???

Co zrobić jeżeli nie ma helpa? Jak je wyszukiwać? Skąd mamy pewność jak i czy działają??? Niestety… jedyną informacją na temat tego co dana wtyczka robi jest krótki opis, który można przeczytać w instalatorze. Poza tym niekiedy autorzy publikują helpy do wtyczek na swoich stronach internetowych. Wtedy trzeba szukać w Google (po prostu przekleić nazwę wtyczki do wyszukiwarki, nacisnąć enter i liczyć na szczęście…). Wszyscy (developerzy QGIS także) wiedzą, że jest to mało wydajne, nieporęczne, a w skrajnych przypadkach frustrujące. Aby ułatwić życie użytkownikom twórcy QGIS stworzyli tzw. repozytorium wtyczek, które dostępne jest na stronie https://plugins.qgis.org. Dostępne są tam opisy większości wtyczek co znacznie ułatwia pracę oraz oszczędza czas potrzebny na szukanie jakichkolwiek informacji.

QGIS – Jak dodać kolumny ze współrzędnymi punktów XY?

Co jakiś czas na forach pojawia się pytanie o to czy i w jaki sposób można dodać współrzędne punktów. Otóż w bardzo prosty sposób można tego dokonać w QGIS.

Należy wybrać Wetor -> Narzędzia geometrii -> Eksportuj/dodaj kolumny geometrii

W nowo utworzonym pliku *.shp zostaną dodane dwie kolumny, w których zostaną zapisane współrzędne XY każdego punktu.

Także w oprogramowaniu ArcGIS jest to prosta operacja na danych.

QGIS Browser

Lada dzień ma oficjalnie pojawić się QuantumGIS 1.7.0, a w internecie można już znaleźć developerską wersję oznaczoną 1.8.0 Testując tą wersję zauważyłem, że zespół rozwojowy QGIS’a szykuje zupełną nowością… QGIS Browser

Jak sama nazwa wskazuje będzie to przeglądarka danych GIS. Dzięki niej w szybki i prosty sposób będziemy mogli przeglądać wszystkie pliki danych przestrzennych w systemie, jak również wszystkie WMS skonfigurowane w QGIS.
Czytaj całość

QGIS 1.7.0 Konwersja plików wektorowych między formatami. (SHP, KML, GPX i inne)

QGIS Dawno, dawno temu pisałem o konwersji pomiędzy KML i SHP w QGIS. Jednak były to czasy QGIS 1.3.0 – sporo od tamtego czasu się zmieniło. Przede wszystkim jest znacznie prościej. Czytelnicy najczęściej pytają i szukają informacji o konwersji między trzema popularnymi formatami: Shapefile, KML i GPX. Konwersje we wszystkie strony można wykonać wedle poniższej instrukcji

Konwersje pomiędzy formatami w QGIS.

1. Wczytujemy dowolny plik wektorowy obsługiwany przez QGIS do projektu, klikamy prawym przyciskiem myszy na nazwie warstwy  i wybieramy „Zapisz jako…”

Konwersja KML do SHP

2. Następnie pokazuje się okno dialogowe:

kml2shp2

Z listy rozwijalnej Format, wybieramy interesujący nas format, wybieramy nazwę i miejsce na dysku, kodowanie (więcej o kodowaniu tutaj Najlepiej zostawić UTF-8) oraz układ współrzędnych (w przypadku pliku GPX i KML należy wybrać układ WGS 84 – EPSG:4326. Co prawda nawet jak wybierzemy coś innego to QGIS zapisze nam to w WGS84, ale nie testowałem tego za bardzo, więc lepiej nie ryzykować). SHAPEFILE możemy zapisać w jakim układzie potrzebujemy… Pola w ramce opcje nie są obowiązkowe i trzeba je wypełnić tylko  przypadku pracy z plikami SpatiaLite

3. Klikamy OK. To tyle.

GPS + QGIS. Na przykładzie GARMIN 60CSX oraz QGIS [v. 1.7.0]

Skąd pomysł na ten artykuł? Odbiorniki GPS są coraz powszechniejsze. Na szlaku coraz częściej spotykam ludzi, którzy mają odbiorniki na ramieniu lub przytwierdzone do kierownicy roweru. Jest to fajny gadżet, który pozwala odnaleźć się w terenie i z którym trudniej zgubić się w lesie.

Dodatkowo można nim zbierać dane geograficzne: punkty i linie. Jaka jest dokładność takich danych? Do pomiarów geodezyjnych takie odbiorniki się nie przydadzą, ale do  innych zastosowań  – owszem. Dość powiedzieć, że w większości na podstawie danych z tych urządzeń powstał OpenStreetMap. Za pomocą zwykłego turystycznego odbiornika zbierałem kiedyś dane o sieci dróg w gminie (innych danych nie było). Po prostu jeździłem samochodem po wszystkich drogach z włączonym odbiornikiem. Zebrane w ten sposób dane znakomicie nadawały się do zastosowań kartograficznych…

Dużo ludzi ma problemy z transferem danych z odbiornika do komputera i odwrotnie. Mam nadzieję, że ten wpis pomoże.

Używam Garmina 60CSX. Model stary, ale jary. Od dłuższego czasu na rynku funkcjonuje jego następca (seria Garmin GPSmap 62), ale jeszcze nie miałem okazji się nim bawić. Garminy są bardzo popularne na rynku outdoorowych odbiorników. Dlaczego? To temat na osobny wpis, ale na pewno ilość darmowych map do pobrania z sieci, możliwość tworzenia własnych map oraz spora grupa aktywnych użytkowników ma w tym swój udział. Nie mam telefonu, tabletu ani innego urządzenia z wbudowanym GPS, więc o nich w ogóle nie będę pisał. Nie wiem jaka jest dokładność ich lokalizacji, jakie są możliwości zbierania śladu, komunikacji z komputerem itp… Do rzeczy.

Zbieranie danych

Punkty, czyli waypointy.

Tu nie ma dużej filozofii. Będąc w terenie wciskamy przycisk na obudowie: „Mark” i punkt zapisuje się w pamięci. Możemy nadać mu nazwę, przypisać ikonę, a nawet dokonać modyfikacji we współrzędnych i w wysokości. Większość modeli obsługuje waypointy w ten sam sposób. Tak zapisany punkt wędruje do pamięci wewnętrznej.

Tracki, czyli linie

Tu już sprawa nie jest taka prosta, bowiem są dwie możliwości. Po wejściu w menu główne (przycisnąć 2x menu), w górnym lewym rogu pokaże się ikona „Tracks” (lub jej polskie tłumaczenie w zależności od wersji oprogramowania). Po podświetleniu ikony i po naciśnięciu „Enter” przechodzimy do menu „Tracks”. Pierwszy obrazek z trójki po lewej. Jeżeli uaktywnimy „on” odbiornik zaczyna rejestrować ślad i zapisywać go w swojej wewnętrznej pamięci. Od tej pory jest to ślad aktywny Pasek pokazuje ile jeszcze tej pamięci pozostało. W moim odbiorniku pamięci wystarcza na 10 000 punktów. Zakładając punktowanie co 15 sekund wychodzi kilka dni marszu. I tu jest problem! Co zrobić, kiedy miejsce zaczyna się kończyć lub zbieramy ślad co sekundę? Można zapisać ślad aktywny (opcja „save”). Wtedy nadajemy śladowi nazwę i wędruje on do wewnętrznej pamięci. Przychodzimy do domu, zgrywamy ślad i… tragedia. Ślad jest totalnie zgeneralizowany. Z tylko sobie wiadomych przyczyn odbiornik zapisując ślad zmniejsza jego objętość do 500 punktów (czyli dwudziestokrotnie). Z tym już nic nie da się zrobić.

Ale! Jest rozwiązanie. W opcjach zapisu klikamy „Data card setup” i dalej „Log track to data card”. Dzięki temu ślad będzie zapisywany dwutorowo – w pamięci wewnętrznej i na karcie pamięci. W tym wypadku ogranicza nas tylko pojemność pamięci na karcie. Nawet jeżeli GPS będzie wskazywał, że ślad zajmuje już 99% wydzielonej pamięci wewnętrznej to na karcie ślad będzie się dalej zapisywał. Jak odczytać tak zapisany ślad? Wystarczy podłączyć odbiornik poprzez kabel USB do komputera i wybrać menu-> setup -> interface -> USB mass storage. Garmin zacznie zachowywać się jak zwykła pamięć zewnętrzna (np. pendrive) i w przypadku systemu Windows będzie można do niego dotrzeć poprzez Mój komputer -> dysk (D,E, F – zależy od konfiguracji). W katalogu Garmin znajdować się będą „czyste” pliki GPX, które można otworzyć w każdym obsługującym je oprogramowaniu (choćby Google Earth). Będą to pojedyncze pliki o nazwie powiązanej z datą. Plik z dzisiaj będzie się nazywał 20110518.gpx. W pliku znajdują się wszystkie ślady zarejestrowane danego dnia. Bez ograniczeń wielkości pliku, bez generalizacji.

Routes, czyli nie wiadomo co.

Nie przypominam sobie, żebym kiedykolwiek używał tego typu danych. Teoretycznie za ich pomocą można wyznaczyć sobie trasę… ale w praktyce mają wąskie zastosowanie i nie znam nikogo, kto by ich używał.

Transfer danych z odbiornika do QGIS

Waypointy.

Skoro już zapisaliśmy interesujące punkty za pomocą waypointów to ściągnijmy je teraz na dysk i zróbmy z nich coś pożytecznego. Zakładam, że QGIS jest włączony. Do wersji 1.7.0 wtyczka „Narzędzie GPS” jest dodawana automatycznie. Wystarczy więc podłączyć odbiornik do komputera poprzez kabel usb, wejść we wtyczki -> GPS -> narzędzie GPS -> przejść do zakładki „Pobierz z GPS” i wypełnić podobnie jak na rysunku poniżej.

Po kliknięciu OK w odpowiednim miejscu na dysku utworzy się plik GPX a do projektu zostaną wczytane wszystkie punkty. Korzystając z możliwości QGIS można przekonwertować je do dowolnego formatu (np. SHP) i wykorzystać do pożądanych celów. Tabela atrybutów powstałej warstwy zawierać będzie wszelkie dane, jakie przypisane były punktowi w pamięci wewnętrznej.

Tracki

W przypadku śladu aktywnego i zapisanego w pamięci wewnętrznej odbiornika, należy postąpić podobnie jak w przypadku waypointów. Jedyną różnicą jest wybór innego typu obiektu (w polskim tłumaczeniu będą to ślady). Jeżeli zapisywaliśmy ślady na karcie pamięci. Podłączamy odbiornik w trybie pamięci masowej i pobieramy gotowe pliki GPX. Otwieramy je w QGIS i działamy.

Transfer z QGIS do odbiornika.

Waypointy

1) Tworzymy plik GPX.

Jeżeli mamy gotowy (np. dostaliśmy e-mailem od znajomego) – przechodzimy do punktu 2.

Możemy go utworzyć konwertując SHP (lub jakikolwiek inny) klikając prawym klawiszem na nazwie pliku wczytanego do QGIS i wybierając „zapisz jako…” Wybieramy GPX i zapisujemy. Możemy także stworzyć pusty plik GPX i przekopiować do niego punkty z pliku SHP. Sposobów jest wiele.

2) Ponieważ wtyczka GPS widzi tylko pliki wczytane do projektu przez nią samą, najlepiej otworzyć nowy projekt QGIS i wczytać utworzony przed chwilą plik ponownie, ale za pomocą wtyczki GPS. Wybieramy zakładkę „Wczytaj plik GPX”, zaznaczmy, że interesują nas waypointy (punkty nawigacyjne) i klikamy OK.

(uwaga!!! Aby wysłać plik GPX do odbiornika plik musi być wczytany również poprzez wtyczkę – zakładka „Wczytaj plik GPX”. Nie wiem czemu wtyczka nie widzi plików GPX wczytanych tradycyjnie poprzez „wczytaj warstwę wektorową”.)

3) Plik zostanie wczytany do QGIS. Można go obejrzeć w oknie mapy. Następnie wybieramy zakładkę: „Prześlij do GPS”: Jeżeli przed chwilą wczytana warstwa jest jedyną, która aktualnie jest w projekcie – zostanie automatycznie załadowana do wysłania. Klikamy OK.

Wysłane. Teraz w odbiorniku mamy waypointy.

Tracki (ślady)

Tu sytuacja wygląda bardzo podobnie. Wczytujemy plik jako ślad i wysyłamy do odbiornika. Należy pamiętać, że ślad zostanie zapisany w pamięci wewnętrznej . Zobaczymy go na liście zapisanych śladów. Poniższe ćwiczenie pokazuje jak to wykonać krok po kroku.

Ćwiczenie:

1. Za pomocą QGIS tworzymy nową warstwę GPX

2. Edytujemy track

3. Wysyłamy go do odbiornika

4. Wyświetlamy ślad w odbiorniku.

Do dzieła

1. Wtyczki -> GPS -> Utwórz nową warstwę GPX. Wybieramy nazwę i miejsce zapisu na dysku. Ja wybrałem geostrona.gpx na pulpicie

2. Edytujemy track. Mając zaznaczoną warstwę geostrona, tracks, klikamy na niebieski ołówek i „edytuj linię”, dwie ikonki dalej na prawo. Możemy zdigitalizować jakąś drogę z zeskanowanej mapy… (mapa musi być w układzie wgs84). Ja postanowiłem się pobawić…

Plik, który jest wpisany do projektu i ma nazwę „tracks” to zapis mojej wycieczki rowerowej. Wczytałem go do QGIS aby mieć odniesienie i automatycznie ustawić okno mapy na interesujący mnie region. Utworzyłam dwa ślady (dlatego na obrazku zamieściłem tabelę atrybutów). Jest to o tyle istotne, że obydwa zostaną wyeksportowane i zapisane jako osobne ślady w odbiorniku.

3. Wysyłamy do Garmina

4. Ślady wyeksportowane, zapisane i wyświetlone na mapie.

Podsumowanie

Ja więcej od odbiornika nie potrzebuje. Oczywiście są specyficzne potrzeby, których ten wpis nie zawiera. Na potrzeby zawodów sportowych (np. paralotniarskich) potrzebny jest aktywny ślad. Tak zwany G-record, który daje gwarancję, że nikt nie majstrował przy pliku GPX i pochodzi on prosto z urządzenia. Ale paralotniarze (i inni sportowcy) mają swój soft, który im wszytko z odbiornika pobiera i sprawdza co trzeba.

Zrzuty wykonane za pomocą programu Garmin xImage.

QGIS i ArcGIS. Różne kodowanie znaków w Shapefile

Problemem, z którym często spotykają się osoby korzystające z QGIS i ArcGIS równocześnie (lub otrzymujące „szejpy” od osób pracujących na innym oprogramowaniu) jest kodowanie znaków w tabeli atrybutów. Plik stworzony w ArcGIS, a czytany w QGIS (lub odwrotnie), przy standardowych ustawieniach będzie się „krzaczył”. Problemem jest kodowanie znaków.

Przykład? Plik utworzony w ArcGIS, otwarty w QGIS

A teraz odwrotna sytuacja, shape stworzony w QGIS, odczytany w ArcGIS

Co jest powodem? Kodowanie znaków. QGIS standardowo używa UTF-8, natomiast ArcGIS kodowania rozpoznawanego przez QGIS jako CP 1250. W QGIS istnieje możliwość określania kodowania pliku w momencie jego wczytania i w momencie zapisu, a więc:

Jeżeli chcemy zapisać plik do późniejszego użycia w ArGIS, w momencie zapisu, musimy zaznaczyć CP 1250.

To samo musimy zrobić, żeby poprawnie odczytać plik zapisany w ArGIS w czasie dodawania warstwy wektorowej

Zapewne problem można również rozwiązać z poziomu ArcGIS, ale wynik będzie ten sam: wszystko będzie działać poprawnie!

Instalator OSGeo4W czyli łatwe instalowanie gisowego oprogramowania

Jedną w wielu cech, którą Linux góruje nad Windowsami jest możliwość instalacji „z pakietów”. Użytkownicy linuxów mogą opuścić następny akapit, ponieważ chcę opisać użytkownikom windowsów ten system.

Instalowanie oprogramowania na windowsach może stanowić nie lada problem. Najpierw trzeba znaleźć w Internecie instalator danego programu, upewnić się, że jest to aktualna wersja, ściągnąć paczkę i zainstalować program. Jeżeli musimy zainstalować cały pakiet oprogramowania – może być to niewygodne. Na linuxach jednym w kilku sposobów instalowania oprogramowania jest tzw „instalacja z pakietów”. Posłużę się przykładem z Ubuntu: wystarczy wejść do „Menadżera pakietów Synaptic”, spośród tysięcy pozycji znaleźć interesujące nas oprogramowanie, zaznaczyć „ptaszek” przy nazwie i kliknąć instaluj. System sam znajdzie źródła programu w dostępnych repozytoriach, pobierze pliki i zainstaluje program. Jeżeli oprogramowanie nie jest popularne i nie ma go na liście, w menadżerze trzeba poszukać adresu repozytorium w Internecie i dodać go do źródeł oprogramowania w systemie. Od tej pory system sam będzie nas powiadamiał o aktualizacjach i dbał, aby wszystko „poinstalowało” się gdzie trzeba. Do prostego i szybkiego użycia rozwiązanie jest idealne.

Instalator OSGEO4W (dzięki Milenie jest już polska wersja strony OSGEO4W) jest przeniesieniem tego rozwiązania na systemy Windows dla oprogramowania open source GIS. Co należy zrobić, aby móc korzystać z takiego udogodnienia???

  1. Pobierz instalator OSGeo4W.
  2. Uruchom go.
  3. Wybierz Express Install lub Advanced Install i kliknij Next.
  4. Wybierz jeden lub więcej pakietów do instalacji i kliknij Next.
  5. Wybrane pakiety oraz potrzebne im zależności zostaną automatycznie pobrane i zainstalowane na dysku.

Polecam używanie Advanced Install. Dzięki temu możemy pobrać i zainstalować więcej wersji dostępnego oprogramowania i dodatki. Instalator przyda się także przy aktualizacji oprogramowania. W opcjach Advanced Install wystarczy zobaczyć, czy jest nowsza wersja, kliknąć i nacisnąć Next.

Poprzez instalator można także usuwać oprogramowanie.

Dodatkową funkcjonalnością jest możliwość instalowania bibliotek. Jest to przydatne, kiedy korzystamy z wtyczek QGIS. Jeżeli podczas instalacji wtyczki dostajemy wiadomość, iż jakaś specjalna biblioteka jest potrzebna do instalacji wystarczy znaleźć ją w instalatorze, wybrać i zainstalować. Wtyczka na pewno zacznie działać – nie trzeba niczego szukać na własną rękę. Instalator zadba, aby wszystko zainstalowało się na swoim miejscu.

A teraz przykłady i obrazki

Rozwijalna lista dostępnego oprogramowania i bibliotek. Klikając w napisy, które wyróżniłem ramką, można:

  • Keep: zachować zainstalowany program
  • Skip: pominąć program
  • nr wersji np 1.7.0-8: zainstalować program

Z pakietów możemy zainstalować najnowsze wersje:

  • QGIS
  • GRASS
  • GDAL
  • MapServer
  • Apache
  • i wiele innych
QGIS 1.4.0 vs ArcGIS 9.3 – analiza wektorowa

arcgis-vs-qgis

W książce „GIS w badaniach przyrodniczych”, o której pisałem w poprzednim wpisie, zainteresował mnie szczególnie rozdział czwarty pt: „Podstawowe funkcje analizy wektorowej„. Autor przedstawił i dokładnie opisał osiem głównych analiz wektorowych, które według autora wykonuje się w badaniach przyrodniczych. Wszystkie analizy wykonane są na podstawie oprogramowania ArcGIS. Postanowiłem zadać sobie pytanie, czy możliwe jest wykonanie tych samych zadań w QGIS. Aby to sprawdzić powtórzyłem czynności, o których pisał Jacek Urbański w QGIS. Wyniki i komentarz poniżej.

Porównanie podzieliłem na analizy zgodnie z podziałem przyjętym przez autora.

  1. Wizualizacja (symbolizacja i klasyfikacja)
  2. Selekcja atrybutowa
  3. Operacje w tablicy atrybutowej (obliczanie, sumaryzacja, łączenie tablic, wprowadzanie wyników pomiaru)
  4. Selekcja na podstawie relacji przestrzennych
  5. Pozyskanie danych atrybutowych na podstawie danych przestrzennych
  6. Buforowanie
  7. Nakładanie

1. Wizualizacja (symbolizacja i klasyfikacja)

Wstępna analiza danych przestrzennych. Szukanie prawidłowości w rozmieszczeniu danych. Wyznaczanie danych wyraźnie różniących się od pozostałych. Identyfikacja prawdopodobnych związków i relacji pomiędzy danymi. Ocena poprawności próbkowania (Urbański, 2008)

W praktyce sprowadza się to do umożliwienia funkcjonalnego, poprawnego i optymalnego wyświetlania warstw tematycznych w „widoku mapy” programu i ich nadawania im stylów – odpowiednich do rodzaju warstwy: punktów, linii i poligonów. Dzięki temu możemy wizualnie rozpoznać zależności, o których mowa w cytacie.

Zagadnienie jest zbyt obszerne, aby wszystkie funkcjonalności analizować je opisowo, więc posłużę się listami:

QGIS potrafi:

  • Dostosowywanie możliwości wyświetlania w zależności od typu danych (punkt, linia, poligon)
  • Zestaw predefiniowanych symboli
  • Możliwość doboru stylu w zależności od atrybutów (symbol pojedynczy, wartość unikalna, symbol stopniowy)
  • Przezroczystość (W wersji 1.4.0 tylko w „starych stylach”)
  • [Poligony] Możliwość edycji wypełnienia, koloru, grubości i stylu obrysu oraz desenia (z listy).
  • [linie] Możliwość edycji grubości i koloru linii.
  • [punkty] Możliwość wyboru symbolu z listy lub zaimportowanie własnego (SVG)
  • Możliwość zapisania stylu w osobnym pliku (.qml)
  • W przypadku „symboli stopniowych” i „wartości unikalnej” – możliwość zastosowania jednej z przygotowanych palet (niestety tylko 3 do wyboru)
  • Możliwość utworzenia kartodiagramu.

ArcGIS potrafi wszystko co wyżej i:

  • Znacznie większa ilość predefiniowanych symboli, styli wypełnienia, obrysu, deseni i palet
  • Styl elementu może zależeć aż od trzech pól w tabeli atrybutów

Z powyższego widać, iż ArcGIS nie ma wiele więcej funkcji, jednak posiada zdecydowanie większą bibliotekę dostępnych stylów. Objawia się to tym, iż prościej i szybciej można uzyskać mapę o oczekiwanym wyglądzie. Zdecydowaną wadą QGIS jest fakt, iż nie można wpływać na desenie poligonów, a oferowana ich paleta nie jest zadowalająca. W tym wypadku QGIS odstaje od ArcGIS.

2. Selekcja atrybutowa

Które obiekty spełniają wymagany zestaw warunków atrybutowych? Utworzenie oddzielnej warstwy, wykonanie obliczeń lub niektórych operacji analitycznych, tylko dla pewnego podzbioru danych zdefiniowanych za pomocą atrybutów.

W tym wypadku postanowiłem porównać Okna „zapytań SQL” obydwu programów.

sqlqarcgis-229x300

aqlqgis-300x259

Po bliższym przyjrzeniu widać, iż różnice są nieznaczne. ArcGIS oferuje kilka opcji więcej: wybrane za pomocą kreatora zapytań obiekty, można dodać do elementów już zaznaczonych, ograniczyć zapytania tylko do już wybranych (ograniczenie selekcji). Jednak podstawowa funkcjonalność, czyli pomoc w wygenerowaniu zapytania w języku SQL jest bardzo podobna. Tak czy inaczej bez podstawowej znajomości języka zapytań trudno będzie się użytkownikowi odnaleźć.

3. Operacje na tablicy atrybutowej (obliczenia sumaryzacja, łączenie tablic, wprowadzanie wyników pomiaru).

Obliczanie nowych wartości i atrybutów na podstawie atrybutów już istniejących. Wprowadzenie do pól atrybutowych wyników pomiarów kształtu pojedynczych obiektów: linii – długość, krętość (sinusoity), wymiar fraktalny (fractical dimension); poligonów – obwód, powierzchnia. Przeprowadzenie klasyfikacji obiektów, przez przypisanie identyfikatora klasy na podstawie złożonych schematów logicznych. Obliczanie z podzbiorów rekordów podstawowych statystyk i wykorzystanie ich w obliczeniach. Przypisywanie obiektom atrybutów z zewnętrznych zbiorów danych. (Urbański, 2008)

Również w przypadku tych analiz QGIS nie odstaje od ArcGIS. Jeżeli pracujemy na formacie natywnym dla QGIS, czyli bazie danych PostGIS, w oknie tabeli atrybutów, przy włączonej edycji, można łatwo dodać lub usunąć kolumnę bazy danych i ustalić typ danych. Za pomocą kalkulatora pól można w prosty sposób uzupełnić ją interesującymi wartościami (również długość, obwód i pole powierzchni). Następnie stosując intuicyjne procedury można wpisać do danej kolumny wyniki obliczeń (np. wynik pomiaru powierzchni w metrach podzielić przez 1 000 000 i wpisać go w postaci kilometrów kwadratowych.

Autor przedstawia możliwości ArcGIS na przykładzie obliczania gęstości zaludnienia i rangowania obiektów na podstawie obliczonej wartości. Posługuje się przy tym skryptami VBA (Dla QGIS językiem skryptowym jest Python, który też możne być użyty w ArcGIS. Nawet powinien, ponieważ od następnej wersji ArcGIS wsparcie dla VBA będzie wycofane). W jednym i drugim programie można to wykonać ręcznie używając kalkulatory pól.

4. Selekcja na podstawie relacji przestrzennych

Znajdowanie obiektów, które spełniają wymagane warunki atrybutowe oraz pozostają w określonych relacjach przestrzennych z obiektami innych warstw. Utworzenie oddzielnych warstw ze znalezionych w ten sposób obiektów (Urbański 2008).

Mówiąc prostszymi słowami chodzi o funkcje z rodziny „select by location”. W ArcGIS sprawa jest bardzo prosta: Funkcja „Select by location” rozwiązuje wszelkie podstawowe problemy. Jej interfejs wygląda następująco – w liście rozwijalnej mamy wszelkie relacje jakie mogą zachodzić pomiędzy obiektami. Wystarczy wybrać warstwy, które nas interesują i relację, jaka między nimi zachodzi.

selbyloc-229x300

Niestety – podstawowe możliwości QGIS pozostawiają w tym przypadku sporo do życzenia, jednak nie znaczy to, że nic nie można z tym zrobić. W pakiecie fTools znajduje się funkcja „Wybór przez lokalizację”, którą możemy wybrać obiekty przecinające się (Intersection). Na tym koniec. Jeżeli jednak używamy warstwy PostGIS możemy skorzystać z jej relacji przestrzennych i tak na przykład za pomocą „touches()” wybieramy poligony, które „dotykają” wybraną warstwę… Z tym funkcjami, których pełną listę można znaleźć w manualu PostGIS.

QGIS dorównuje ArcGIS.

wpl-300x173

Dalej autor opisuje skrypty VBA i funkcje do obliczania pola powierzchni, obwodu i długości obiektów. W QGIS można wykonać to w podobny sposób.

5. Pozyskiwanie danych atrybutowych na podstawie relacji przestrzennych.

Przypisywanie obiektom danej warstwy wektorowej nowych atrybutów pochodzących od obiektów innych warstw, które pozostają z obiektami danej warstwy w pewnej relacji przestrzennej. Dodanie do warstwy punktów atrybutów z różnych warstw wektorowych i rastrowych (z miejsc odpowiadających tym punktom). (Urbański 2008)

Innymi słowy – modelowanie regresywne. W tym rozdziale autor opisał metody przypisywania atrybutów warstw wektorowych i rastrowych do innych warstw wektorowych na podstawie relacji (np. LWM dla przypisania wartości rastra do linii), jednak nie wspomniał jak tego dokonać w ArcGIS.

W QGIS służy do tego wtyczka „Point Sampling Tool” napisana przez Borysa Jurgiela. Dzięki niej możemy w prosty sposób przypisać wartości z wszelkich warstw do punktów. Tylko do punktów (jednak to jest najczęściej używane)

6. Buforowanie

Wyznaczanie stref na podstawie odległości do obiektów danego typu. (Urbański 2008)

Innymi słowy klasyka GIS. Zarówno w ArcGIS jak i QGIS wygląda to podobnie. W QGIS należy wybrać z fTools narzędzie „Bufor(y)”. Można utworzyć bufory o stałej wielkości, lub o wielkości wpisanej do atrybutów obiektu. Dla wszytkich obiektów, lub tylko dla tych wybranych.

ArcGIS ma funkcję buforów wielokrotnych, czyli dodania za jednym razem kilku buforów… Jest to wygodne, ale ten sam efekt można uzyskać wykonując w QGIS bufor kilkukrotnie zmieniając parametry.

7. Nakładanie

Stworzenie warstw dla danego projektu, obejmujących wyłącznie rejon badań (z warstw obejmujących większe obszary). Utworzenie warstwy obiektów, które maja taką samą lokalicację, jak obiekty innej warstwy, i przypisanie im atrybutów tych obiektów.(…) Testowanie połączeń segmentów linii w sieciach i tworzenie warstw z punktów węzłowych. Utworzenie i znalezienie nowych obiektów, spełniających dowolna kombinację warunków z wielu warstw. (…) (Urbański 2008)

Innymi słowy kolejne klasyki GIS: clip, overlay, union i intersect… Dostępne w pakiecie fTools jako narzędzia geoprocesingu.

8. Generalizacja

Ingerencja danych do jednej skali, przetworzenie warstw na dane o dokładności odpowiadającej określonej skali. Zmniejszenie liczby punktów i odcinków w danej warstwie, przy jak najmniejszej stracie informacji. Wykonanie nawej warstwy poligonów w wyniku połączenia obiektów o tej samej klasie. (Urbański (2008)

W ArcGIS – generalization i dissolve w QGIS – uprość geometrię i agreguj. Wyniki działania podobne, jednak ArcGIS posiada trochę więcej możliwości i parametrów.

Podsumowanie

Okazuje się, że QGIS w każdym aspekcie dościga ArcGIS. Oczywiście przewaga ArcGIS jest ogromna, jednak przejawia się głównie w wygodzie użytkowania i mnogości parametrów funkcji. Można powiedzieć, iż spośród wspomnianych analiz nie ma funkcji, której QGIS by nie wykonał. Przeważnie z mniejszą ilością opcji, ale „da się”.

Z czystym sumieniem mogę stwierdzić, że QGIS i reszta oprogramowania open source – do podstawowych zastosowań – nadaje się doskonale. Za inne funkcje (wygodne geobazy, wyszukane analizy, 100% okienkowości itp.) trzeba słono płacić firmie z Redlands… zapewne do czasu.

GIS SUPPORT sp. z o.o.


SZKOLIMY

z QGIS oraz innego otwartego oprogramowania GIS.

zobacz ofertę szkoleń


WSPIERAMY

świadczymy komercyjne wsparcie dla oprogramowania open source GIS w Polsce. Wdrażamy i pomagamy w migracji na otwarte oprogramowanie

dowiedz się więcej


PROGRAMUJEMY

mamy bardzo duże doświadczenie w tworzeniu aplikacji GIS oraz geoportali w oparciu o komponenty open source GIS

dowiedz się więcej