I was recently trying to perform some band math calculations in multiband images. I have a big chunk of images witch contains more than 300 bands (dates) each. So I first choosed ENVI to do this process. When trying to calculate anything with those rasters, I realised that ENVI was not ignoring NoData values (-9999), and the result was obviously bad. When trying to redefine the ENVI header file to set the value to ignore, the software performs this only for the visualization, and any processing was still considering NoData. The same happened when I defined -9999 as NoData using QGIS "translate" tool.
So, resuming: Now the whole dataset have the NoData value successfully set for -9999, but ENVI is still not considering it for calculations. In QGIS or ArcGIS, it is possible to ignore this values for calculations, but I cannot perform multiband operations (more than 300 bands in each image) in tools like raster calculator, image analysis or even the model builder. Masking the NoData values from raster or separate bands in individual files seems not to be efficient methods given the size of the dataset (more than 5 gb per file).
Considering this, I am looking for a method to perform multiband calculations (eg. vegetation indexes) while the software ignores NoData values with just a few processing operations, given the size of the dataset.