I have been trying to run BandMaths in the GPT, both through the command line and in the GUI, in order to get rid of pixels in a S1 image that have a value above a certain threshold. When using “Amplitude_VH <= 500”, I end up with a binary mask image, rather than what I expected, which is an image with pixels that do not meet the criterion being given the specified no data value. I am using SNAP v5 and I installed the latest updates this morning.
Is the BandMaths facility in the GPT not working, or am I interpreting what I should be getting as an output incorrectly/do not understand how BandMaths works? If it is meant to be giving a binary mask as an output in my case, I suggest it is renamed “MaskGenerator” or something, as it is misleading at the moment.
The generic name of BandMaths meets its purpose very well. If you use in the SNAP Desktop you’ll see it can do a lot of things. If the output is a binary mask, a vegetation index or something more sophisticated. It is up to the user.
In your case you get the result of the expression you have used.
The comparison operator
Amplitude_VH if it is less or equal to 500. And the result is a boolean.
The given no-data-value is independent of the expression.
What you want to achieve needs a bit more complex expression.
Amplitude_VH <= 500 ? Amplitude_VH : <no-data-value>
or NaN instead of your no-data value.
This way you get the Amplitude_VH value if it is lower or equal to 500 and if it is greater the no-data value.
Okay, thank you for clearing that up and for the advice!