1 / 19

imageMath a calculator for evaluating mathematical expressions with

imageMath a calculator for evaluating mathematical expressions with images, bands and spectral profiles. Andreas Rabe. andreas.rabe@geo.hu-berlin.de. 22. Oktober 2012. Overview. imageMath evaluates mathematical expressions arguments can be scalar numbers, images, bands or profiles

aric
Télécharger la présentation

imageMath a calculator for evaluating mathematical expressions with

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. imageMath a calculator for evaluating mathematical expressions with images, bands and spectral profiles Andreas Rabe andreas.rabe@geo.hu-berlin.de 22. Oktober 2012

  2. Overview • imageMath evaluates mathematical expressions • arguments can be scalar numbers, images, bands or profiles • IDL based application for EnMAP-Box or ENVI

  3. Understanding Operators • imageMath supports all IDL operators • extends the common operator logic to images 3

  4. Understanding Operators What is a sensible operator logic? number + number = number 1 + 2 = 3

  5. Understanding Operators What is a sensible operator logic? image + image = image • operator is applied component-wise

  6. Understanding Operators What is a sensible operator logic? image + band + number = image + + replicate along missing dimensions + + • missing dimensions are replicated • operator is applied component-wise

  7. Understanding Operators What is a sensible operator logic? Rules for argument pairs: image+image: no replication needed image+band: replicate band along image's spectral dimension image+profile: replication profile along image's spatial dimension image+number: replicate number along image's spatial and spectral dimension band+band: no replication needed band+profile: replicate band along profile's spectral dimension and replicate profile along band's spatial dimension band+number: replicate number along band's spatial dimension profile+profile: no replication needed profile+number: replicate number along profile's spectral dimension number+number: no replication needed

  8. Understanding Data Types • imageMath supports all IDL data types • casting functions and data type postfixes casting functions and postfixes 1. = 1. versus float(1) = 1. 1b = 1bversus byte(1) = 1b integer and floating-point division 1/2 = 0 versus 1./2. = 0.5 overflows and underflows -1b = 255b (underflow) 10^5 = -31072 (overflow) 0-1b = -1 (no underflow, implicite type casting) If your calculated images are all black, or appear to be randomly generated, it is most likely an issue of data types.

  9. Understanding Functions • imageMath functions can be arbitrary complex • from simple type casting functions like byte() or float() • to whole processing chains Set of predefined functions:

  10. Understanding Functions Image in Image out Trigonometric and Miscellaneous Math functions take an input image, calculate something for each componentand return a result image of same size.

  11. Understanding Functions Image in Band out Profile Statistics functions take an input image, calculate a profile-wise statistic for each profile, and return a result band of same spatial size.

  12. Understanding Functions Image in Profile out Band Statistics functions take an input image, calculate a band-wise statistic for each band, and return a result profile of same spectral size.

  13. Understanding Functions Image in Number out Band Statistics functions take an input image, calculate an image-wise statistic, and return a scalar number.

  14. Usage Examples Masking an Image image*mask

  15. Usage Examples Extracting Class-Specific Regions image*(class eq 1)

  16. Usage Examples Scale Image Profiles between -10 and 10 float(image-spectralMinimum(image)) / spectralSpan(image) *20-10

  17. Usage Examples Scale Image Bands between -10 and 10 float(image-spatialMinimum(image)) /spatialSpan(image) *20-10'

  18. Usage Examples Spectral Similarity (root mean squared error) sqrt(spectralMean((image-profile)^2.))

  19. Thank you very much for your attention. Any questions?

More Related