Moduł do georeferencji w programie Quantum GIS nazywa się Georeferencer i znajduje się w menu Wtyczki.
Składa się z dwóch okienek – Raster (w którym wskazujemy plik rastrowy do georeferencji) oraz Punkty referecyjne (gdzie, jak sama nazwa mówi, nadajemy punkty).
W celu dodania punktu wybieramy ikonkę Dodaj punkt oraz klikamy na wybranym obszarze mapy. Pojawia się okienko, w którym należy podać współrzędne punktu. Można to zrobić na dwa sposoby – wpisać ręcznie albo kliknąć przycisk z obszaru mapy i skorzystać z pliku przedstawiającego ten sam obszar i osadzonego w układzie współrzędnych (wczytujemy go do głównego okna programu za pomocą polecenia Dodaj warstwę rastrową). W trakcie procesu georeferencji główne okno programu jest aktywne i możemy normalnie korzystać z innych opcji QGISa.
Dla przykładu: georeferencjonowanie arkusza mapy topograficznej w skali 1:50 000 (układ PUWG-1992) w oparciu o odpowiednią warstwę WMS z geoportalu.



Po nadaniu minimum czterech punktów możemy zakończyć proces georeferencji kilkając przycisk Stwórz. Utworzony zostanie plik o rozszerzeniu *.wld, zawierający informacje o nadanym układzie odniesienia oraz plik *.points, zawierający informacje o nadanych punktach referencyjnych. Wybierając opcję Stwórz i wczytaj warstwę świeżo zgeoreferencjonowany plik zostanie otwarty w QGISie.
O podłączaniu serwerów WMS z geoportalu do oprogramowania ArcGIS już pisałam. Dziś chciałabym zaprezentować co należy zrobić, aby z zasobów geoportalu można było korzystać w darmowym oprogramowaniu Quantum GIS (QGIS).
W celu podłączenia serwera WMS w programie QGIS wybieramy z menu Warstwa ›› Dodaj warstwę WMS.
Po kliknięciu przycisku Nowy pojawia się okienko w którym podajemy nazwę (dowolną) oraz adres dodawanego serwisu WMS, np.
http://maps.geoportal.gov.pl/wms_orto/wmservice.aspx
UWAGA: od czerwca br. obowiązują inne adresy
W razie problemów warto również zdefiniować wersję WMS poprzez dodanie do adresu
?version=1.1.1
czyli
http://sdi.geoportal.gov.pl/wms_orto/wmservice.aspx?version=1.1.1
Następnie należy połączyć się z serwerem poprzez kliknięcie przycisku Połącz, w efekcie czego otrzymamy spis dostępnych warstw. W przypadku gdy jest ich kilka wybieramy to, co nas interesuje.

Istotnym elementem w korzystaniu z serwerów WMS geoportalu w QGISie jest wybór układu współrzędnych. Należy wybrać układ 1992 (ETRS89/Poland CS92).

Przykład: mapy w układzie GUGIK-80

Ortofotomapa:

EPSG (European Petroleum Survey Group) była organizacją zajmującą się przemysłem paliwowym. Istniała do 2005 roku. Jednym z jej opracowań są szeroko stosowane kody EPSG identyfikujące poszczególne układy współrzędnych. Poniżej prezentuję listę kodów dla najpopularniejszych w Polsce układów.
Pasy południkowe o szerokości 3°:
Układ współrzędnych 1942 (południk środkowy 15°E) – 3329
Układ współrzędnych 1942 (południk środkowy 18°E) – 3330
Układ współrzędnych 1942 (południk środkowy 21°E) – 3331
Układ współrzędnych 1942 (południk środkowy 24°E) – 3332
Pasy południkowe o szerokości 6°:
Układ współrzędnych 1942 (południk środkowy 15°E) – 3333
Układ współrzędnych 1942 (południk środkowy 21°E) – 3334
Układ współrzędnych 1942 (południk środkowy 27°E) – 3335
Układ współrzędnych 1965 (strefa I) – 3120
Układ współrzędnych 1965 (strefa II) – 2172
Układ współrzędnych 1965 (strefa III) – 2173
Układ współrzędnych 1965 (strefa IV) – 2174
Układ współrzędnych 1965 (strefa V) – 2175
GUGIK-80 – 3328
Układ współrzędnych 1992 – 2180
Układ współrzędnych 2000 (strefa V) – 2176
Układ współrzędnych 2000 (strefa VI) – 2177
Układ współrzędnych 2000 (strefa VII) – 2178
Układ współrzędnych 2000 (strefa VIII) – 2179
UTM (strefa 33N) – 32633
UTM (strefa 34N) – 32634
UTM (strefa 35N) – 32635
WGS 84 – 4326
Zaprezentowaną w przystępny sposób listę wszystkich kodów wraz z opisem można znaleźć na stronie Spatial Reference
Wektoryzacja jest procesem przetworzenia pliku rastrowego do postaci wektorowej. Najczęściej dokonuje się jej poprzez ręczną digitalizację za pomocą myszki komputerowej lub specjalnego urządzenia – digitizera. Metoda ta nazywana jest heads-up digitizing (gdyż w trakcie digitalizacji nie pochylamy głowy nad mapą ;)). W przypadku dużej ilości danych jest to jednak proces długotrwały i żmudny.
Znacznym ułatwieniem może okazać się wektoryzacja automatyczna. Najlepsze efekty osiągnie się w przypadku rastrów zawierających jednoznaczne granice wydzieleń, niezakłócone treścią podkładową mapy czy też innymi jej elementami. Do automatycznej wektoryzacji nadają się więc najlepiej rastry zawierające np. rysunek poziomicowy, cieki wodne, granice działek, poligony glebowe itp.
Narzędzia do automatycznej wektoryzacji w oprogramowaniu TNTmips znajdziemy w Convert ›› Raster to Geometric. Do wyboru mamy dwie możliwości:
Auto-Boundaries – Komórki rastra posiadające taką samą wartość grupowane są w poszczególne poligony. Metoda ta sprawdza się najlepiej w przypadku danych jakościowych. W otwartym oknie wskazujemy plik rastrowy, a następnie wybieramy czy plik wyściowy ma być plikiem wektorowym, czy też obiektem CAD. Dodatkowo możemy do generowanego pliku dołączyć tabelę zawierającą standardowe atrybuty.

Więcej rozbudowanych możliwości daje metoda Auto-Trace. Widać to chociażby po ilości okien – po wybraniu pliku rastrowego do wektoryzacji otwierają się trzy okna. W pierwszym (Raster Thresholding and Tracing) dokonujemy wyboru pliku wejściowego oraz ustawiamy wartości poszczególnych paramterów. W oknie Raster Thresholding and Tracing (Selected Raster View) ustalamy obszar poglądu, natomiast w okienku Sample Results obserwujemy efekty zastosowanych ustawień.

Wrócmy do głównego okna Raster Thresholding and Tracing i przyjrzyjmy się poszczególnym możliwościom. Efekt wynikowy wektoryzacji można zapisać w formie linii (Vector Line Trace) lub poligonów grupujących piksele o takiej samej wartości (Vector Boundaries). Druga opcja jak widać jest bardzo zblizona do omówionego wcześniej Auto-Bounadaries. Jeśli naszym celem jest zwektoryzowanie pliku rastrowego zawierającego rysunek poziomicowy to powinniśmy wybrać opcję Vector Line Trace. Następnym krokiem powinno byc wybranie wartości progowej (Threshold) i ustalenie w polu Trace czy wektoryzowane mają być wartości pikselów poniżej czy powyżej progu. Manipulując wartością progową zmiany obserwujemy w oknie Sample Results. Próg powinien zostać tak ustalony, aby zawierał maksymalną ilość niezbędnej treści pliku rastrowego (np. wspomniane poziomice) przy jak najmniejszej ilości zbędnej treści (takimi niepotrzebnymi, a nawet niewskazanymi elementami mogą być nazwy miejscowości lub cyfry na mapie topograficznej). Bardzo rzadko jednak udaje się za pomocą samej wartosci progowej oddzielić to co niezbędne od tego co zakłóca zasadniczą treść. Dlatego też TNTmips umożliwia zastosowanie kilku filtrów korygujących niedoskonałości procesu automatycznej wektoryzacji:
Include Implied Border – po zaznaczeniu tej opcji program wykryje sugerowane granice i dokona ich wektoryzacji. Domyślnie wyłączona.
Close Gaps (End-to-End) – dociąganie zakończeń sąsiednich linii.
Close Gaps (End-to-Line) – domykanie przerw między końcem jednej linii a drugą linią.
Remove Dangling Lines – usuwanie krótkich “dyndających” linii.
Remove Island Polygons – usuwanie małych, poligonów wewnątrz większych.
Remove Bubble Polygons – usuwanie małych poligonów tworzonych w obrębie grubszych linii jako błąd wektoryzacji.
Thin Lines – generalizacja linii, czyli zmniejszanie liczby punktów (do wyboru metoda Douglasa-Peuckera, minimalnej odległości oraz minimalnej proporcji).
Po ustaleniu interesujących nas paramterów klikamy Test i w oknie Sample Results widzimy podgląd zastosowanych ustawień. Efekt każdego filtru jest zaznaczony innym kolorem.


W przypadku niezadawalających efektów zmieniamy wartości wybranych paramterów i ponownie klikamy Test. W celu ostatecznej wektoryzacji należy kliknąć Run…
Uwaga – przedstawione powyżej filtry wektorowe są dostępne również poza procesem automatycznej wektoryzacji (Geometric ›› Filters)
Tworząc internetowy serwis zawierający mapy, zdarza się, że chcielibyśmy na naszą mapę nałożyć inną mapę albo użyć fotomapy (np. google albo zumi) jako warstwy podkładowej do naszej mapy. W OpenLayers jest to bardzo proste. Zgodnie z dokumentacją zawartą na stronie projektu wystarczy zdefiniować nową warstwę. Problem pojawia się w momencie gdy warstwy nakładają się na siebie i jedna zasłania drugą. Aby uniknąć takich sytuacji wystarczy dodać do definiowanej warstwy, parametr transparent: true który ustawia przezroczystość dla obszarów warstwy nie pokrytych mapą np. dla warstwa dróg będzie widoczna tylko w tych miejscach gdzie przebiegają drogi a pozostałe obszary będą przezroczyste i będzie widoczna warstwa znajdująca się pod spodem naszej warstwy drogi.
Poniżej przedstawiono przykładową warstwę “drogi” oraz zastosowanie parametru transparent
drogi = new OpenLayers.Layer.WMS(
//opis warswty
“Polska – drogi”,
//adres serwera wms
“http://moj.wms:8080/geoserver/wms”,
{
//wysokosc okna warstwy
height: ’300′,
//szereokosc okna warstwy
width: ’800′,
//nazwa warstwy na serwerze wms
layers: ‘polska:drogi’,
//uklad wspolrzednych mapy
srs: ‘EPSG:2180′,
//przezroczystosc warstwy
transparent: true
},
{singleTile: true, ratio: 1}
);
W wyniku nałożenia warstwy drogi na fotomapę google uzyskano efekt podobny do przedstawionego na poniższym rysunku.
