2017-03-14 2 views
0

J'ai essayé d'utiliser la fonction 'PhenologyRaster' du paquet greenbrown pour modéliser la saison de croissance de ma zone d'étude. Cependant, chaque fois que j'exécute la fonction, j'obtiens des sorties vides (par exemple, la couche SOS.2016 montrera NA). Ma question est la suivante: ai-je des problèmes parce que je gère la fonction sur une seule année de données, ou parce que les séries temporelles Landsat sont quelque peu irrégulières (fréquence de ~ 30 scènes par an)?Utilisation du paquet greenbrown avec les données Landsat

J'utilise le morceau suivant de code pour exécuter la fonction PhenologyRatser:

PhenoTest = PhenologyRaster(landsat2016,start=c(2016,1,3),end=c(2016,12,20),freq=24,approach="Deriv",min.mean=-0.5,tsgf='TSGFspline',interpolate=TRUE) 

La fonction est appliquée sur un empilement de trame ayant les caractéristiques suivantes:

class  : RasterBrick 
dimensions : 526, 591, 310866, 18 (nrow, ncol, ncell, nlayers) 
resolution : 30, 30 (x, y) 
extent  : 604965, 622695, 4208175, 4223955 (xmin, xmax, ymin, ymax) 
coord. ref. : +proj=utm +zone=10 +datum=WGS84 +units=m +no_defs +ellps=WGS84 +towgs84=0,0,0 
data source : in memory 
names  : X2016.01.03, X2016.01.19, X2016.02.04, X2016.03.07, X2016.03.23, X2016.04.24, X2016.05.10, X2016.05.26, X2016.06.27, X2016.07.13, X2016.07.29, X2016.08.14, X2016.08.30, X2016.09.15, X2016.10.01, ... 
min values :  -0.1964,   NA,  -0.5382,   NA,  -0.4696,  -0.2197,  -0.2803,  -0.4274,  -0.4827,  -0.2631,  -0.5256,  -0.4856,  -0.5631,  -0.3204,  -0.5512, ... 
max values :  0.1714,   NA,  0.2425,   NA,  0.2061,  0.5173,  0.4583,  0.2470,  0.3629,  0.5165,  0.2981,  0.2802,  1.6199,  0.5016,  0.3007, ... 

Répondre

0

I avaient aussi le même problème. Ce que j'ai fait, c'est que j'ai créé une série de mannequins pendant trois ans, puis les données ont été exécutées avec succès.

b.1 <- brick(r.1, r.2, r.3, r.4, r.5, r.6, r.7, r.8, r.9, r.10, r.11, r.12) 
b.2 <- stack(b.2, b.2, b.2) 
pheno.test <- PhenologyRaster(b.2, start=c(2016,1), freq=12, approach="White", 
           tsgf="TSGFspline", interpolate=T) 
+0

Je conseillerais aussi que vous devez supprimer les valeurs négatives des données, comme ne peut pas représenter la verdeur. Vous pouvez supprimer au départ les valeurs négatives des rasters par exemple, valeurs (r.1) [valeurs (r.1) <0] = NA –