Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ##Cell Statistics=name
- ##Select_directory=Folder
- ##statistic_name=string average
- ##Output_raster=Output raster
- import glob, os
- from PyQt4.QtCore import QFileInfo
- from qgis.core import QgsRasterLayer, QgsRectangle
- os.chdir(Select_directory)
- raster_list = []
- extent = QgsRectangle()
- extent.setMinimal()
- statistic_dic = {'average':0, 'count':1, 'median':2,'mode':3, 'minimum':4, 'min_raster':5,'maximum':6, 'max_raster':7, 'std':8, 'range':9}
- for raster in glob.glob("*.tif"):
- fileInfo = QFileInfo(raster)
- baseName = fileInfo.baseName()
- rlayer = QgsRasterLayer(raster, baseName)
- # Combine raster layers to list
- raster_list .append(rlayer)
- # Combine raster extents
- extent.combineExtentWith(rlayer.extent())
- # Get extent
- xmin = extent.xMinimum()
- xmax = extent.xMaximum()
- ymin = extent.yMinimum()
- ymax = extent.yMaximum()
- # Run algorithm and set relevant parameters
- processing.runalg("grass7:r.series",
- {"input":raster_list ,
- "-n":False,
- "method":statistic_dic[statistic_name],
- "range":'-10000000000,10000000000',
- "GRASS_REGION_PARAMETER":"%f,%f,%f,%f"% (xmin, xmax, ymin, ymax),
- "GRASS_REGION_CELLSIZE_PARAMETER":0,
- "output":Output_raster})
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement