skimage2.filters.LPIFilter2D#

class skimage2.filters.LPIFilter2D(impulse_response, **filter_params)[source]#

Bases: object

Linear Position-Invariant Filter (2-dimensional)

__init__(impulse_response, **filter_params)[source]#
Parameters:
impulse_responsecallable f(r, c, **filter_params)

Function that yields the impulse response. r and c are 1-dimensional vectors that represent row and column positions, in other words coordinates are (r[0],c[0]),(r[0],c[1]) etc. **filter_params are passed through.

In other words, impulse_response would be called like this:

>>> def impulse_response(r, c, **filter_params):
...     pass
>>>
>>> r = [0,0,0,1,1,1,2,2,2]
>>> c = [0,1,2,0,1,2,0,1,2]
>>> filter_params = {'kw1': 1, 'kw2': 2, 'kw3': 3}
>>> impulse_response(r, c, **filter_params)

Examples

Gaussian filter without normalization of coefficients:

>>> def filt_func(r, c, sigma=1):
...     return np.exp(-(r**2 + c**2)/(2 * sigma**2))
>>> filter = LPIFilter2D(filt_func)