code: def offset_mask(mask):
      
      def axis_data(axis):
          """Gets the bounds of a masked area along a certain axis"""
          x = mask.sum(axis)
          trimmed_front = N.trim_zeros(x,"f")
          offset = len(x)-len(trimmed_front)
          size = len(N.trim_zeros(trimmed_front,"b"))
          return offset,size
  
      xo,xs = axis_data(0)
      yo,ys = axis_data(1)
  
      array = mask[yo:yo+ys,xo:xo+xs]
      offset = (yo,xo)
      return offset, array
docs: Returns a mask shrunk to the 'minimum bounding rectangle' of the
          nonzero portion of the previous mask, and its offset from the original.
          Useful to find the smallest rectangular section of the image that can be
          extracted to include the entire geometry. Conforms to the y-first
          expectations of numpy arrays rather than x-first (geodata).