i am new in Saga Gis, i created grid- LS factor (from Rusle equation for erosis) in Saga gis and now i need to "put" it to Arcgis. How can i do this? I tried a lot of possibilities and none of them worked. Thanks
[GIS] how to convert grid from Saga gis to have raster in Arcgis
arcgis-10.0rastersaga
Related Solutions
Typing saga_cmd io_grid 3
and cutting the header:
Usage: saga_cmd [-GRID <str>] [-FILE <str>] [-NODATA <str>] [-NODATA_VAL <str>]
-GRID:<str> Grid
Data Object (optional output)
-FILE:<str> File
File path
-NODATA:<str> No Data Value
Choice
Available Choices:
[0] Surfer's No Data Value
[1] User Defined
Default: 0
-NODATA_VAL:<str> User Defined No Data Value
Floating point
Default: -99999.000000
you will notice the -GRID
optional parameter. It allows to specify the name of the SAGA grid to store on your disk and not in memory. The concept is quite the same for saga_cmd io_gdal 0
.
So you need to adapt your commands, storing on your disk every output grid in SDAT (SAGA GIS Binary Grid File Format) format using the .sgrd
extension.
saga_cmd io_grid 3 -GRID=G:\path_to_file\foo.sgrd -FILE=G:\path_to_file\foo.grd -NODATA=0 -NODATA_VAL=-99999.000000
saga_cmd io_gdal 0 -GRIDS=G:\path_to_file\bar.sgrd -FILES=G:\path_to_file\bar.adf
saga_cmd grid_tools 3 -GRIDS=G:\path_to_file\foo.sgrd;G:\path_to_file\bar.sgrd -TYPE=7 -INTERPOL=0 -OVERLAP=1 -BLEND_DIST=10.000000 -TARGET=1 -USER_XMIN=0.000000 -USER_XMAX=0.000000 -USER_YMIN=0.000000 -USER_YMAX=0.000000 -USER_SIZE=1.000000 -USER_COLS=0 -USER_ROWS=0 -USER_GRID=mosaic -GRID_GRID=
saga_cmd io_grid 5 -GRID=G:\path_to_file\mosaic.sgrd -FILE=G:\path_to_file\mosaic.xyz
Finally, a useful remark from How to create a python script for saga:
Instead of running through the GUI or the command line you can also run modules from python. Compared to the saga cmd interface this has the advantage that you don't have to save all intermediate results, apart from the fact that you can use all the useful features of python to eg iterate over a number of files.
The LS-factor is an important variable to estimate average erosion - annual soil loss (as in RUSLE), and based on experimental data. It becomes greater when the slope is steeper and the effective slope length is shorter. Slope length is the horizontal distance from the ridge to the point where deposition starts to occur. At a given cell, the length to the nearby steepest cell is successively calculated unless all nearby slope is less than half of their own slope.
A suggested overall workflow with a pair of input/output and corresponding SAGA tool are summarized below. As you see, there are many steps and involve several intermediate products.
Slope, Aspect, Curvature tool
Input: DEM
Output: Slope (measured in radian)
Fill Sink (Wang & Liu) tool
Input: DEM
Output: DEM without sink
Catchment Area tool
Input: DEM without sink
Output: Flow Accumulation (Total catchment area)
Flow width and specific catchment area tool
Input: DEM without sink, Flow Accumulation (Total catchment area)
Output: Specific catchment area
LS-factor tool
Input: Slope, Specific catchment area
Output: LS-factor
To speed up the process, you can try Basic terrain analysis
tool, which is in the SAGA - Terrain Analysis - Morphometry group. It does all the necessary steps automatically to produce LS-factor.
Best Answer
As Jay Guarneri mentionned, you can export to GeoTIFF using the
Import/Export - GDAL/OGR
module andGDAL: Export Raster to GeoTIFF
which will create a TIF image.Another nice way is to create a virtual raster that can be loaded in ArcGIS (verion 10 and above, I think). Virtual raster is essentially an xml file describing your raster and pointing to it. So it's not a copy, and if you update the original raster content, you'll update the vrt at the same time (except if you play with dimensions or projection). You go in
Import/Export - GDAL/OGR
>GDAL: Export Raster
and setFormat
option to Virtual Raster. It's the equivalent ofThat way you can work on your raster in saga and you just need to reload it in ArcGIS to update. No need to export it every single time.