He estado echando un vistazo a SAGA ( http://www.saga-gis.org/en/index.html ) y parece tener algunas buenas herramientas para el geoprocesamiento.
Me preguntaba si alguien por ahí ha tenido suerte al traer módulos SAGA (python) a ArcGIS Desktop y ArcToolbox.
Si es así, ¿qué pasos usaste?
Respuestas:
Para que ArcGIS hable con SAGA, creamos cajas de herramientas simples que crean y ejecutan archivos .bat desde una ubicación temporal. Eso ejecuta el módulo SAGA a través de la interfaz de línea de comandos. En general, la caja de herramientas necesitará convertir formatos de datos, resolver problemas de proyección, etc., antes y después de ejecutar la función SAGA, pero eso es bastante sencillo. El primero es el obstáculo, pero luego solo se trata de adaptarlo, ya que necesita conectarse a módulos SAGA adicionales. Por supuesto, una vez que tenga la caja de herramientas, puede reutilizarse en flujos de trabajo más complejos a través de modelbuilder o en python.
fuente
Para ser sincero, parece que SAGA depende en gran medida de otros proyectos OpenSource para la funcionalidad de procesamiento (por ejemplo, GRASS, gdal, proj.4, etc.)
Puede ser mucho más simple instalar QGIS Desktop GIS y luego escribir un QGIS Python Plugin (s) para hacer lo que le gustaría hacer. Es probable que tenga acceso programático a gran parte de la funcionalidad disponible a través de SAGA.
En una nota al margen, a pesar de que SAGA tiene licencia bajo la GPL, no creo que tenga problemas legales al escribir un script que combine el código ESRI y SAGA, pero posiblemente podría haber problemas con la publicación del código en ArcScripts.
fuente
Hay algunos esfuerzos para ejecutar módulos de saga en arcgis a través de sextante: http://sextantegis.blogspot.com/2011/08/here-is-another-video-of-sextante-on.html
fuente
Hacemos exactamente eso en: www.frogtech.com.au
El punto es obtener una funcionalidad similar a la que está vinculada a través de extensiones o niveles de licencia en ArcGIS Desktop ... no tiene sentido pagar miles por una extensión cuando solo usa una o dos de su funcionalidad, entonces podemos obtener nuestro SIG menos especializado Para que los usuarios utilicen esa herramienta a través de un flujo de trabajo regular, también lo personalizamos para permitir que las entradas / salidas provengan de nuestros flujos de trabajo regulares.
fuente
Un enfoque más liviano: use los paquetes rpy / rpy2 (para Python) y RSAGA (para R) para hacer la conexión ArcGIS-to-Python-to-R-to-SAGA. Estoy incursionando en esto ahora. Lleva algo de tiempo, pero se puede hacer.
Por supuesto, eso significa que necesitaría tener ArcGIS / Python, R y SAGA todos instalados en versiones compatibles. Pero bueno, nada bueno viene fácilmente.
fuente
saga_api, sys.argv, etc .; tenga en cuenta que saga hace la mayoría de las cosas en la memoria y necesita importar y exportar datos del disco
fuente
Tenga en cuenta que desde la versión 2.2.1, SAGA admite cajas de herramientas que se pueden ejecutar desde arcgis: https://sourceforge.net/p/saga-gis/news/2015/09/saga-221-released/
"Para ejecutar las herramientas de ArcSAGA, debe navegar a su directorio de instalación de SAGA con el control ArcCatalog y abrir las cajas de herramientas de ArcSAGA Python. Debería funcionar de forma inmediata sin más pasos de instalación".
fuente