class_docstr: TODO: Merge with Normalization Preprocessor
      
class_docstr_tok: ["TODO",":","Merge","with","Normalization","Preprocessor"]
code: def postprocess(self, input_data, raw_data=None, casename=None):
      normalize_numpy = input_data.astype(float)
  
      if self.input_intensity_range is None:
          input_intensity_range = [
              np.min(normalize_numpy),
              np.max(normalize_numpy),
          ]
      else:
          input_intensity_range = self.input_intensity_range
  
      if input_intensity_range[0] == input_intensity_range[1]:
          normalize_numpy[:] = self.output_intensity_range[0]
          print(
              "Warning: normalization edge case. All array values are equal. Normalizing to minimum value."
          )
      else:
          normalize_numpy = (
              (
                  self.output_intensity_range[1]
                  - self.output_intensity_range[0]
              )
              * (normalize_numpy - input_intensity_range[0])
          ) / (
              input_intensity_range[1] - input_intensity_range[0]
          ) + self.output_intensity_range[
              0
          ]
  
      if self.input_intensity_range is not None:
          normalize_numpy[
              normalize_numpy < self.output_intensity_range[0]
          ] = self.output_intensity_range[0]
          normalize_numpy[
              normalize_numpy > self.output_intensity_range[1]
          ] = self.output_intensity_range[1]
  
      return normalize_numpy
  
imports: import numpy
  from skimage.measure import label
  from scipy.ndimage.morphology import binary_fill_holes
  from deepneuro.postprocessing.postprocessor import Postprocessor
  from deepneuro.utilities.util import add_parameter
label_desc: Use image node_id 2 for calling the Rescale obj's underlying member method code with example usage: obj.postprocess(input_data, raw_data, casename) and returns: normalize_numpy