Si vols traduir les discussions al català prem:

Càlcul NIBBLE

Eines de processament i anàlisi SIG amb el MiraMon i eines de teledetecció. Casos d'aplicació, resultats, problemàtiques d'ús i algorismes.
Respon
joanpe
Entrades: 2
Membre des de: dc., 05 oct. 2011, 08:37

Càlcul NIBBLE

Entrada Autor: joanpe » dt., 22 nov. 2011, 14:20

Bon dia,

voldria saber si hi ha alguna manera de calcular el següent en format ràster :
Tinc un ràster de costos generat amb GENCOST, a partir de la xarxa viària.
En aquest ràster, les cel.les corresponents a la xarxa viària tenen el seu valor de cost mínim des d'una entitat diana, i les cel.les que no formaven part de la xarxa viària tenen valor NODATA.
El que voldria és que les cel.les amb valor NODATA prenguessin el valor de la cel.la més propera (euclidianament) amb valor diferent a NODATA.

En ArcGIS correspondria a la funció NIBBLE, i en el MiraMon no he sabut trobar una comanda que ho permeti fer.

Fa uns dies que dóno voltes a trobar una alternativa per fer-ho amb les eines que proporciona MiraMon, però no se m'ha acudit res. Potser a vosaltres se us acudeix quelcom.

Moltes gràcies per endavant,
Joanpe

joanpe
Entrades: 2
Membre des de: dc., 05 oct. 2011, 08:37

Re: Càlcul NIBBLE

Entrada Autor: joanpe » dc., 23 nov. 2011, 15:34

Finalment, he fet el càlcul amb el Filtre selectiu (FagoVal), només per als píxels amb valor NODATA, i amb una finestra de convolució de 3x3 i la moda.

Com que els valors dels píxels del ràster de costos són molt similars quan són contigus (ja que es tracta del cost en minuts per atravessar píxels de 30 metres amb velocitats entre 15 i 85 km/h), ja em serveix !!!

Gràcies,
Joanpe

Lluís Pesquer
Entrades: 11
Membre des de: dj., 16 juny 2011, 19:03

Re: Càlcul NIBBLE

Entrada Autor: Lluís Pesquer » dj., 24 nov. 2011, 13:37

Hola,
com comentes la teva solució amb el FagoVal s'aproxima a la solució desitjada però crec que no fa exactament el que fa Nibble, ja que no és exactament la moda dels veïns del píxel a fagocitar el que tu desitges.

Si volem fer el que ens explica l'esquema gràfic de http://webhelp.esri.com/arcgisdesktop/9 ... ame=nibble, la solució que veig és encadenar processos de Reclssificació i Transparentar (Cover) amb la Calculadora de MiraMon.

En primer lloc reclassificaria la màscara (mask_grid en l'exemple de Nibble) on tots els valors vàlids els reclassificaria a nodata i els nodata a un valor que no estigui en el rang dels valors possibles del ràster d'entrada (ingrid1 en l'exemple de Nibble i el valor podria ser 99). Amb això "inverteixo" la màscara, el resultat li dic inv_mask_grid1.
En segon lloc usaria la funció Transparentar sobre el resultat anteriror amb la següent sintaxi CVR(inv_mask_grid1, ingrid1) i el resultat li dic inv_mask_grid2. Això fa que aquest resultat hereti els valors de ingrid1 en les zones nodata de inv_mask_grid1.
En tercer lloc reclassifico a nodata aquell valor on vagi fer la primera reclassificació de nodata (99, en l'exemple) i el resultat li dic inv_mask_grid3 . Finalment torno a transparentar CVR(inv_mask_grid3, ingrid1).

En principi són diferents passos que haurien de portar-te a la mateix solució del Nibble. Si creus que algun pas no s'entén o no és correcte, m'ho tornaré a mirar.

Salut!
Lluís

Respon