5 Metody interpolacji

library('dismo')
library('raster')
library('sp')
library('gstat')
library('fields')
library('geostatbook')
data(punkty)
data(siatka)
data(granica)

Przez przejściem do interpolacji geostatystycznych warto zdać sobie sprawę, że nie jest to jedyna możliwa droga postępowania. Można wyróżnić dwie główne grupy modeli przestrzennych - modele deterministyczne oraz modele statystyczne.

5.1 Modele deterministyczne

Modele deterministyczne charakteryzują się tym, że ich parametry są zazwyczaj ustalane w oparciu o funkcję odległości lub powierzchni. W tych modelach brakuje szacunków na temat oceny błędu modelu. Do zalet tych modeli należy szczególnie krótki czas obliczeń. Do modeli deterministycznych należą, między innymi:

  • Metoda diagramów Voronoi’a (ang. Voronoi diagram)
  • Metoda średniej ważonej odległością (ang. Inverse Distance Weighted - IDW)
  • Funkcje wielomianowe (ang. Polynomials)
  • Funkcje sklejane (ang. Splines)

5.1.1 Modele deterministyczne | Voronoi

Metoda diagramów Voronoi’a polega na stworzeniu nieregularnych poligonów na podstawie analizowanych punktów, a następnie wpisaniu w każdy poligon wartości odpowiadającego punktu. Na poniższym przykładzie ta metoda stosowana jest z użyciem funkcji voronoi() z pakietu dismo. Wyniki następnie można przyciąć do badanego obszaru z użyciem funkcji intersect() z pakietu raster.

voronoi_interp <- voronoi(punkty)
voronoi_interp <- intersect(granica, voronoi_interp)
spplot(voronoi_interp, 'temp', contour=TRUE, main='Poligony Voronoia')

5.1.2 Modele deterministyczne | IDW

Metoda średniej ważonej odległością (IDW) wylicza wartość dla każdej komórki na podstawie wartości punktów obokległych ważonych odwrotnością ich odległości. W efekcie, czym punkt jest bardziej oddalony, tym mniejszy jest jego wpływ na interpolowaną wartość. Wagę punktów ustala się z użyciem argumentu wykładnika potęgowego (ang. power). W pakiecie gstat istnieje do tego celu funkcja idw(), która przyjmuje analizowaną cechę (temp~1), zbiór punktowy, siatkę, oraz wartość wykładnika potęgowego (argument idp).

idw_wolin <- idw(temp~1, punkty, siatka, idp=2)
## [inverse distance weighted interpolation]
spplot(idw_wolin, 'var1.pred', contour=TRUE, main='IDW')

5.1.3 Modele deterministyczne | Funkcje wielomianowe

Stosowanie funkcji wielomianowych w R może odbyć się z wykorzystaniem funkcji gstat() z pakietu gstat. Wymaga ona podania trzech argumentów: formula określającego naszą analizowaną cechę (temp~1 mówi, że chcemy interpolować wartość temperatury zależnej od samej siebie), data określający analizowany zbiór danych, oraz degree określającą stopień wielomianu. Następnie funkcja predict() przenosi nowe wartości na wcześniej stworzoną siatkę.

wielomian_1 <- gstat(formula=temp~1, data=punkty, degree=1)
wielomian_1_pred <- predict(wielomian_1, newdata=siatka)
## [ordinary or weighted least squares prediction]
spplot(wielomian_1_pred[1], contour=TRUE,main='Powierzchnia trendu - wielomian pierwszego stopnia')

wielomian_2 <- gstat(formula=temp~1, data=punkty, degree=2)
wielomian_2_pred <- predict(wielomian_2, newdata=siatka)
## [ordinary or weighted least squares prediction]
spplot(wielomian_2_pred[1], contour=TRUE,main='Powierzchnia trendu - wielomian drugiego stopnia')

wielomian_3 <- gstat(formula=temp~1, data=punkty, degree=3)
wielomian_3_pred <- predict(wielomian_3, newdata=siatka)
## [ordinary or weighted least squares prediction]
spplot(wielomian_3_pred[1], contour=TRUE,main='Powierzchnia trendu - wielomian trzeciego stopnia')

5.1.4 Modele deterministyczne | Funkcje sklejane

Interpolacja z użyciem funkcji sklejanych (funkcja Tps() z pakietu fields) dopasowuje krzywą powierzchnię do wartości analizowanych punktów.

tps <- Tps(coordinates(punkty), punkty@data$temp)
ras <- raster(siatka)
spline <- interpolate(ras, tps)
spline <- mask(spline, ras)
spplot(spline, contour=TRUE , main='Funkcje sklejane')

5.1.5 Modele deterministyczne | Porównanie

5.2 Modele statystyczne

Modele statystyczne charakteryzują się tym, że ich parametry określane są w oparciu o teorię prawdopodobieństwa. Dodatkowo wynik estymacji zawiera także oszacowanie błędu. Te metody zazwyczaj wymagają większych zasobów sprzętowych. Do modeli statystycznych należą, między innymi:

  • Kriging
  • Modele regresyjne
  • Modele bayesowe
  • Modele hybrydowe

W kolejnych rozdziałach można znaleźć omówienie kilku podstawowych typów pierwszej z tych metod - krigingu.