astro py:docs

- Index
- Modules

### Navigation

- next »
- « previous |
- Astropy v1.1.1 »
- Convolution and filtering (`astropy.convolution`) »
- MexicanHat2DKernel

# MexicanHat2DKernel

class `astropy.convolution.``MexicanHat2DKernel`(width, **kwargs)

  Bases: `astropy.convolution.Kernel2D`

  2D Mexican hat filter kernel.

  The Mexican Hat, or inverted Gaussian-Laplace filter, is a bandpass filter. It smoothes the data and removes slowly varying or constant structures (e.g. Background). It is useful for peak or multi-scale detection.

  This kernel is derived from a normalized Gaussian function, by computing the second derivative. This results in an amplitude at the kernels center of 1. / (pi * width ** 4). The normalization is the same as for `scipy.ndimage.filters.gaussian_laplace`, except for a minus sign.

  Parameters:

  width : number

  > Width of the filter kernel, defined as the standard deviation of the Gaussian function from which it is derived.

  x_size : odd int, optional

  > Size in x direction of the kernel array. Default = 8 * width.

  y_size : odd int, optional

  > Size in y direction of the kernel array. Default = 8 * width.

  mode : str, optional

  > One of the following discretization modes:
  >   - ‘center’ (default)

  >       Discretize model by taking the value at the center of the bin.

  >   - ‘linear_interp’

  >       Discretize model by performing a bilinear interpolation between the values at the corners of the bin.

  >   - ‘oversample’

  >       Discretize model by taking the average on an oversampled grid.

  >   - ‘integrate’

  >       Discretize model by integrating the model over the bin.

  factor : number, optional

  > Factor of oversampling. Default factor = 10.

  See also

  `Gaussian2DKernel`, `Box2DKernel`, `Tophat2DKernel`, `Ring2DKernel`, `TrapezoidDisk2DKernel`, `AiryDisk2DKernel`, `Moffat2DKernel`

  Examples

  Kernel response:

  >     import matplotlib.pyplot as plt
  >     from astropy.convolution import MexicanHat2DKernel
  >     mexicanhat_2D_kernel = MexicanHat2DKernel(10)
  >     plt.imshow(mexicanhat_2D_kernel, interpolation='none', origin='lower')
  >     plt.xlabel('x [pixels]')
  >     plt.ylabel('y [pixels]')
  >     plt.colorbar()
  >     plt.show()

  > (Source code, png, hires.png, pdf)