Le blog francophone consacré
aux technologies Esri

ArcGIS et SciPy: pour renforcer le lien entre SIG et monde scientifique


Il y a quelques jours,  au cours de l'Ocean GIS Forum, Esri annonçait une l'intégration, dans les futures version d'ArcGIS, des librairies scientifiques Python SciPy pour permettre aux scientifiques, aux ingénieurs techniques et aux géomaticiens de réaliser des calculs scientifiques et techniques personnalisés. Cet ensemble de librairies Open Source complètent les fonctions mathématiques de base de Python, langage simple à appréhender, hautement "scalable" et stable car éprouvé depuis de nombreuses années.


SciPy n'est pas un seul et unique module mais un écosystème composé d'un ensemble de modules (on parle aussi de "SciPy Stack"). SciPy se décompose en 7 packages principaux:

NumPy, pour manipuler des tableaux et réaliser des calculs matriciels.
SciPy, un ensemble d'algorithmes mathématiques.
Matplotlib, pour la génération de diagrammes 2D et 3D.
Pandas, pour manipuler avec une haute-performance des structures de données complexes.
SymPy, pour la formalisation et le traitement d'équation mathématiques avancées.
IPython et Nose, pour disposer d'une interface interactive pour rapidement tester des scripts.


On notera que NumPy et Matplotlib étaient déjà distribués avec ArcGIS depuis plusieurs versions, l'ajout des autres packages permettra une intégration de l'ensemble de l'écosystème SciPy dans ArcGIS. 

Pourquoi intégrer SciPy dans les médias d'ArcGIS ?

L'idée est avant tout de simplifier l'accès aux capacités mathématiques de cet écosystème pour un utilisateur ArcGIS. Bien que SciPy soit Open Source et donc téléchargeable librement, il peut parfois être compliquer de faire fonctionner l'ensemble de l'écosystème avec une version cible d'ArcGIS. En effet, des modules comme Pandas ou Matplotlib dépendent de versions très précises de NumPy qui peuvent ne pas correspondre à celle fournie avec ArcGIS. Disposer des bonnes version de chaque package est possible mais peut vous prendre un peu de temps. En intégrant SciPy dans ArcGIS, tous ces problèmes de dépendances sont réglés.

Intégrer SciPy avec ArcGIS va vous permettre de développer nouveaux outils de géotraitements mathématiques et techniques plus facilement en tirant profit des dizaines de milliers de lignes de code déjà écrites par une communauté très active. Par exemple, vous pourriez assez facilement créer votre propres outils de détection de contours dans une image en utilisant les librairies de filtrage d'images de SciPy.

Exemple de géotraitement personnalisé pour réaliser
de la détection de contours dans une image

Un autre aspect important motivant l'intégration de ces librairies est de vous simplifier le déploiement de vos géotraitements personnalisés exploitant SciPy. En effet, vous pourrez partager et distribuer vos outils sans vous soucier des dépendances à SciPy puisque les utilisateurs disposerons en standard de ces dépendances dans ArcGIS. 
 
Dans quelle version cette intégration sera effective ?
 
SciPy sera intégrée en différentes étapes. Tout d'abord SciPy sera intégré dans ArcGIS Pro en version 10.3 en tant qu'installation optionnelle. Dans la version suivante 10.3.1 (ce nom de version peut encore changer), SciPy sera installé automatiquement pour l'ensemble des applications d'ArcGIS for Desktop.  
 
Pourquoi ArcGIS Pro en premier ?
   
ArcGIS Pro est une nouvelle application d'ArcGIS for Desktop qui permet la gestion, la visualisation, la mise à jour et l'analyse de données SIG. ArcGIS Pro est basé sur une architecture 64-bit et exploite les différents coeurs du processeurs de votre machine permettant l'exécution de traitement tout en conservant la main pour continuer à travailler pendant ce temps avec la carte, les données ou les mises en page... Ainsi, elle est particulièrement bien adaptée pour exécuter des librairies mathématiques comme SciPy potentiellement très consommatrices de CPU.
 

Partager cet article:

Rejoindre la discussion

    Les commentaires à propos de cet article: