Metode de interpolare implementate în aplicațiile open source - Florin Iosub

Post on 20-May-2015

2,566 views 2 download

description

Seminar "Soluții open source pentru prelucrarea și reprezentarea datelor geospațiale", 19-20 noiembrie 2010 - Timișoara

transcript

geo-spatial.org

Metode de interpolare implementate în aplicaţii

open source

Florin Iosub

geo-spatial.org

Ce este interpolarea?

• Interpolarea este procedura de estimare a unei valori într-o locaţie fără măsurători, folosind valorile măsurate în punctele vecine.

• Implică găsirea unei funcţii f(x, y) ce reprezintă întreaga suprafaţă a valorilor z asociate cu puncte (x, y) dispuse neregulat. Această funcţie face o predicţie a valorilor z pentru alte poziţii dispuse regulat. [Niţu C., 2005]

• Interpolarea poate fi: Exactă (când modelul obţinut păstrează valoarile datelor iniţiale); Aproximativă (când valoarile datelor iniţiale sunt alterate); Locală (sunt luate în considerare doar valorile din punctele vecine); Globală (sunt luate în considerare toate punctele cu valori cunoscute).

geo-spatial.org

• Cu alte cuvinte interpolarea constă în prezicerea valorilor celulelor unui fişier raster pe baza unui număr limitat de măsurători punctuale [ESRI].

Fig.1 Raster obţinut pe baza interpolării unor valori cunoscute

geo-spatial.org

Metode de interpolare

1. Triangulaţia

• Metodă dezvoltată de Peuker şi colaboratorii (1978), ce foloseşte triangulaţia Delaunay.

• Rezultatul constă într-o reţea de triunghiuri (structură de tip TIN) perfect circumscrise unor cercuri, lucru ce face ca distanţa dintre punctele care formează vârfurile triunghiului să fie întotdeauna minimă .

• Pentru fiecare triunghi se memorează coordonatele şi atributele celor trei vârfuri, topologia precum şi panta şi direcţia de înclinare a suprafeţei triunghiului.

Fig.2 Structură de tip TIN

geo-spatial.org

• Triangulaţia funcţionează cel mai bine când datele sunt distribuite uniform pe suprafaţa ce urmează a fi interpolată.

• Metodă exactă ce foloseşte interpolarea polinomială lineară sau cubică.

• Este indicat a se utiliza pentru seturi mari de date, fiind şi destul de rapidă.

• Aplicaţii open source în care această metodă este implementată: QGIS (Quantum GIS); SAGA (System for Automated Geoscientific Analyses);

geo-spatial.org

2. Inverse Distance Weighted

• Metoda porneşte de la prezumţia că influenţa unui punct comparativ cu altul descreşte o dată cu distanţa.

• Este un interpolator de medie exact sau aproximativ în funcţie de parametrii stabiliţi de utilizator.

• Generează aşa-numiţii “ochi de taur”, efectul putând fi redus aplicându-se un filtru de netezire.

Fig.3 Interpolare IDW [Mitas, L., Mitasova, H., 1999]

geo-spatial.org

• În cazul modelării terenului, unde există văi şi vârfuri, acurateţea este scăzută.

• Este o metoda rapidă de interpolare.

• Aplicaţii open source în care această metodă este implementată: GRASS (Geographic Resources Analysis Support System); gvSIG; QGIS (Quantum GIS); SAGA (System for Automated Geoscientific Analyses); Whitebox Geospatial Analysis Tools.

geo-spatial.org

3. Natural Neighbor

• Introdusă de Sibson (1981), se bazează pe o reţea de poligoane Thiessen (dualul unei triangulaţii Delaunay).

• Combină caracteristicile optime ale metodelor Nearest Neighbor şi TIN (Webster şi Oliver, 2001).

Fig.4 Interpolare Natural Neighbor [Wikipedia]

geo-spatial.org

• Algoritmul interpolării Natural Neighbor foloseşte o medie a valorilor observaţiilor învecinate, unde valorile sunt proporţionale cu „suprafaţa împrumutată” [Surfer Help].

• Zona asociată cu poligonul Thiessen obţintă dintr-un poligon existent este denumită „zonă de imprumut".

• Rapidă şi exactă.

• Nu extrapolează valoarea Z.

• Aplicaţii open source în care această metodă este implementată: SAGA (System for Automated Geoscientific Analyses);

geo-spatial.org

4. Nearest Neighbor

• Atribuie valoarea celui mai apropiat punct neţinând cont de celelalte.

• Este utilă când datele sunt deja egal depărtate, dar este nevoie să fie convertite într-un fişier de tip grid.

• Alternativ, în cazul în care datele sunt deja într-o reţea cu doar câteva valori lipsă, aceasta metoda este eficientă pentru umplerea lipsurilor.

• Rapidă şi exactă.

• Nu extrapolează valoarea z.

• Aplicaţii open source în care această metodă este implementată: gvSIG ILWIS (Integrated Land and Water Information System); SAGA (System for Automated Geoscientific Analyses); Whitebox Geospatial Analysis Tools;

geo-spatial.org

5. Regular spline with tension

• Metoda este implementată în aplicaţia open source GRASS (Geographic Resources Analysis Support System), mai exact modulul v.surf.rst.

• Simultan cu interpolarea, acest modul calculează şi o serie de parametri topografici (pantă, aspect, curbură) pe care îi salvează sub formă de rastere.

• Metoda poate fi atât exactă cât şi aproximativă în funcţie de parametrii setaţi de utilizator (tension şi smoothing).

• Utilizatorul este avertizat atunci când rezultatul conţine anomalii şi trebuie modificaţi parametrii tension şi smoothing.

• Are la bază procedeul “quad-tree segmentation” ce permite procesarea unui număr mare de puncte.

geo-spatial.org

6. Kriging

• Metodă dezvoltată de inginerul D.G. Krige (1951) în încercarea de a estima cât mai precis resursele de minereuri.

• Metoda se bazează pe teoria variabilelor regionalizate, ce presupune că variaţia spaţială a fenomenului este omogenă din punct de vedere statistic, pe toată suprafaţa.

• Presupune că direcţia şi distanţa existentă între date reflectă o corelare spaţială ce poate fi folosită în explicarea variaţiei acestora.

• Poate fi “potrivită” unui set de date folosind o variogramă.

• Estimează erorile şi extrapolează valoarea z.

• În funcţie de parametrii specificaţi de utilizator poate fi atât o metodă exactă cât şi una aproximativă.

geo-spatial.org

• Tipuri de kriging: Simple kriging Ordinary kriging (în cadrul căreia fiecare valoare este tratată

individual) Universal kriging (în care se presupune că variaţia spaţială a valorii z

este dependentă de trei componente: o structură/set de date, un component aleator corelat şi o eroare reziduală)

• Poate fi utilizată pentru orice set de date, este cea mai flexibilă, însă este lentă când volumul de date este mare.

• Aplicaţii open source în care această metodă este implementată: gvSIG; ILWIS (Integrated Land and Water Information System); SAGA (System for Automated Geoscientific Analyses);

geo-spatial.org

7. Co-Kriging

• Metoda ţine cont de mai multe variabile în procesul de estimare a valorilor necunoscute.

• Ia în considerare auto-corelaţia şi cross-corelaţia dintre fiecare variabilă.

• Estimările sunt mult mai exacte atunci când volumul de date aparţinând primei variabile este mult mai redus faţă de cel ce aparţine celei de-a doua variabilă.

• Tipuri de co-kriging: Simple co-kriging Ordinary co-kriging Standardized ordinary co-kriging

• Aplicaţii open source în care această metodă este implementată: ILWIS (Integrated Land and Water Information System); GEMS (Geostatistical Earth Modeling Software).

geo-spatial.org

Comparaţie între metode

Metodă de interpolare Soft Timp execuţie

TINQGIS 12 sec

SAGA 28 sec

IDW

SAGA 4 sec

Whitebox GAT 8 sec

gvSIG 20 sec

GRASS 38 sec

QGIS 60 min 48 sec

Nearest Neighbor

Whitebox GAT 6 sec

SAGA 14 sec

gvSIG 23 sec

ILWIS 19 min 32 sec

Natural Neighbor SAGA 25 sec

Ordinary Kriging

SAGA 12 sec

gvSIG 60 sec

ILWIS out of memory

Regular spline with tension GRASS 9 min 43 sec

• 101987 de puncte• 2 Gb Ram, Intel Xenon 2.80 GHz (8 miezuri)

Tab.1 Timpi de execuţie pentru medodele de interpolare

geo-spatial.org

Fig.5 SAGA

Fig.6 QGIS

Triangulaţia

geo-spatial.org

Fig.7 GRASS

Fig.8 gvSIG

Fig.9 QGIS

Fig.10 SAGA

Fig.11 Whitebox GAT

Inverse Distance Weighted

geo-spatial.org

Fig.12 gvSIG Fig.13 ILWIS

Fig.14 SAGA Fig.15 Whitebox GAT

Nearest Neighbor

geo-spatial.org

Fig.16 Natural Neighbor (SAGA)

Fig.17 RST (GRASS)

Regular spline with tension

Natural Neighbor

geo-spatial.org

Fig.18 gvSIG

Fig.18 SAGA

Ordinary Kriging

geo-spatial.org

VĂ MULŢUMESC

PENTRU ATENŢIE !