get_peak_mask#

rojak.atmosphere.jet_stream.get_peak_mask(two_dimensional_slice, threshold, footprint=None)[source]#

Find peaks from a 2D array

Parameters:
  • two_dimensional_slice (NDArray) – Array to find local maximas in

  • threshold (float) – Minimum value of peak

  • footprint (NDArray[bool] | None) – Represents local regions within which to search for peaks at every point in the 2D array

Returns:

NDArray[np.bool]

Mask of local maxima in the input 2D array

Return type:

mask

Examples

Modified from skimage.feature.peak_local_max() docs

>>> img1 = np.zeros((7, 7))
>>> img1[3, 4] = 1
>>> img1[3, 2] = 1.5
>>> img1
array([[0. , 0. , 0. , 0. , 0. , 0. , 0. ],
       [0. , 0. , 0. , 0. , 0. , 0. , 0. ],
       [0. , 0. , 0. , 0. , 0. , 0. , 0. ],
       [0. , 0. , 1.5, 0. , 1. , 0. , 0. ],
       [0. , 0. , 0. , 0. , 0. , 0. , 0. ],
       [0. , 0. , 0. , 0. , 0. , 0. , 0. ],
       [0. , 0. , 0. , 0. , 0. , 0. , 0. ]])
>>> get_peak_mask(img1, 0)
array([[False, False, False, False, False, False, False],
       [False, False, False, False, False, False, False],
       [False, False, False, False, False, False, False],
       [False, False,  True, False,  True, False, False],
       [False, False, False, False, False, False, False],
       [False, False, False, False, False, False, False],
       [False, False, False, False, False, False, False]])
>>> get_peak_mask(img1, 0, footprint=np.ones((5,5), dtype=np.bool_))
array([[False, False, False, False, False, False, False],
       [False, False, False, False, False, False, False],
       [False, False, False, False, False, False, False],
       [False, False,  True, False, False, False, False],
       [False, False, False, False, False, False, False],
       [False, False, False, False, False, False, False],
       [False, False, False, False, False, False, False]])