Subscribe to this thread
Home - General / All posts - Processing of multi-spectral imagery
alobo9 post(s)
#30-Jan-21 19:09

Does Manifold have tools for processing multi- and hyper-spectral imagery, such as multi-spectral classification, dimensionality reduction, band algebra (i.e. index computation)?

If it does, where could I read some info? Cannot find any clue in the web page.



9,627 post(s)
#30-Jan-21 19:19

A basic start is in the manual under Examples > Imagery > SQL Example: Create NDVI Displays.

So, yes.


6,511 post(s)
#31-Jan-21 05:24

See also the SQL Example: Create Topographic Position Index TPI Displays topic. There are many more examples of working with image internals (channels, etc.) in the Images Examples section of the manual. The various "filters" examples show how to do calculations on channels using various functions and then recombine as desired.

When you import an image you get a table that has tiles with channels in them. You can then manipulate those channels to create whatever you want using arbitrarily complex logic and mathematics, with a few hundred different functions to help out, for example, tile functions, aggregate functions and aggregate operators, and similar. Tile functions can encapsulate some pretty big math/workflow to eliminate the need to manually do math step by step.

There are also higher level facilities like the Join dialog that also is very useful for recombining channels and other image manipulation. An example is here.

So...for now, it's not a specialized remote sensing / classification application, but more a general tool that has remarkably many raster manipulation capabilities, at least for a $95 tool. There will be more added.

alobo9 post(s)
#01-Feb-21 10:47

Thanks, very interesting. I'm surprised about seeing image processing within a SQL section.


6,511 post(s)
#01-Feb-21 15:35

Images are just data in tables. You can process them using point-and-click user interfaces like the Transform pane (brain fade... I forgot to mention that in my prior post) or the Join dialog, or you can manipulate that data using SQL or scripts.

Many geoprocessing jobs boil down to basic database operations like joins, so SQL works very well, and can be way more orderly than ad hoc scripting in languages like Python or C#, or "raster calculators" that don't have full database power on tap when you want it. Manifold SQL is parallel as well, so what you write in SQL will be automatically parallelized both CPU parallelized and GPU parallelized, something that's useful when working with rasters.

Those who prefer a more typical GIS approach can always use the scripting language of their choice, since the many functions that work with tiles/rasters/images can be called from scripts as well.

About that Transform pane... when you look into topics like Transform - Tiles: Compose, there are very many capabilities that unfold from that. For example, all those pull-down boxes where you can pick channels from the image are not limited to being only one of the channels as is. Each one of them can be an expression that's as arbitrarily complex as you like. You could create TPI displays by putting an expression into one of those option boxes.

Manifold User Community Use Agreement Copyright (C) 2007-2019 Manifold Software Limited. All rights reserved.