Blog from Mar 14, 2009

Calling all grid coverage users.

Are you someone who:

  • Needs to create, analyse or manipulate raster data ?
  • Is often working at the image level with Java Advanced Imaging (JAI) ?
  • Would like things to be easier ?

If so, then we need you...

GeoTools and JAI

GeoTools provides a number of classes that wrap JAI operators and allow you to do such things as arithmetic operations, resampling and basic convolution without needing write to JAI code yourself. But more complex operations usually involve working with the grid coverage's backing image data directly, often using JAI image operators.

The JAI-tools project

JAI-tools is an open source project, recently started by members of the GeoTools community. It aims to extend the Java Advanced Imaging library with new image operators and utilities.

JAI-tools is not a geo-spatial project itself. All of the JAI-tools components work in image-space (ie. with band and pixel coordinates) rather than geo-space. But one of the motivations in starting the project was to support GeoTools applications working with grid coverages.

One strand of the JAI-tools project is already being tested in this context: Jiffle, an image scripting language to apply mathematical expressions to image data. Andrea Antonello has bravely embedded Jiffle into the map calculator in his development version of JGrass. See Andrea's page on this work here .

Looking for guinea pigs

Now we are looking for other interested GeoTools users to try out JAI-tools components and give us some feedback. The source code is available from the project site and is set up to compile with Maven. Please be aware that all of the is in a pre-release state at the moment and assume that it contains bugs and other undocumented features.

If you would like to provide specific feedback on the jai-tools code, the best way to do so is to subscribe to the mailing list . General comments and suggestions that you think would be of interest to the wider GeoTools community can be posted to the GeoTools users' list.