Customizing ENVI – IDL resources for building your own geospatial applications

This post is part of a series on getting the most out of your geospatial applications. Check back regularly to see the latest tips and examples.

IDL Heron ReefDo you currently build your own geospatial applications using IDL? Are you interested in streamlining your image processing workflow by automating your analysis? Or perhaps you’re just getting started in remote sensing and want to learn how to use IDL to build custom applications? Below is an introductory list of online resources to assist with your IDL programming needs.

IDL – the Interactive Data Language – a “scientific programming language” offered by Exelis Visual Information Solutions (Exelis VIS) – is commonly used for data analysis in the fields of astronomy, medical imaging and remote sensing. IDL is an interpreted array-based language that includes a large user-accessible library of numerical, statistical and other data analysis routines, as well as robust functionality for the graphic display and visualization of your data.

IDL is also the language used to develop ENVI, and the foundation on which users extend ENVI and the recently released ENVI Services Engine. This means that by mastering the fundamentals of IDL you can develop custom ENVI routines that transform your image processing algorithms into your own geospatial applications. These apps can then be easily embedded in the ENVI interface such that you create your own user-generated toolbox options.

Good places to start for programming IDL and customizing your own ENVI applications are the many different manuals, tutorials and code examples distributed with the software and/or provided on the Exelis VIS website. For example, within the contents of ENVI Help is an entire section devoted to “Programming with ENVI”, which includes instructions on transitioning to the new ENVI API, best practices for creating your own toolbox extensions, and a list of available ENVI-specific programming routines. The Exelis VIS website also includes Forums, Help Articles, a user-contributed Code Library, and the ability to register for ENVI and IDL training courses.

Beyond these core Exelis VIS resources, an extensive IDL user community has also developed, providing a plethora of programming tips and a diverse array of code examples:

  • There are large IDL libraries, such as the Ocean Color IDL Library from NASA’s Ocean Color Discipline Processing Group, the IDL Astronomy User’s Library from the Astrophysics Science Division at NASA’s Goddard Space Flight Center, and the Markwardt IDL Library from Craig Markwardt.
  • There are blogs devoted to IDL, such as those from Michael Galloy and Mort Canty, as well as websites from David Fanning and Ken Bowman.
  • There are also a number of books on IDL programming, including “Image Analysis, Classification, and Change Detection in Remote Sensing: With Algorithms for ENVI/IDL, Second Edition” by Morton Canty (with an upcoming third edition to be released in 2014), “Modern IDL: A Guide to IDL Programming” by Michael Galloy, and “Practical IDL Programming” by Liam Gumley, among others.

These are but a few of the many resources available at your disposal. A quick internet search will reveal many others. And don’t forget that looking at code written by others is a great way to learn, even if it’s not directly applicable to your application. So be sure to take advantage of what’s out there and start transforming your innovative algorithms and processing routines into your own custom apps.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s