pop_bilateral(image, selem, out=None, mask=None, shift_x=False, shift_y=False, s0=10, s1=10)
The number of pixels is defined as the number of pixels which are included in the structuring element and the mask. Additionally pixels must have a greylevel inside the interval [g-s0, g+s1] where g is the greyvalue of the center pixel.
Input image.
The neighborhood expressed as a 2-D array of 1's and 0's.
If None, a new array is allocated.
Mask array that defines (>0) area of the image included in the local neighborhood. If None, the complete image is used (default).
Offset added to the structuring element center point. Shift is bounded to the structuring element sizes (center must be inside the given structuring element).
Define the [s0, s1] interval around the greyvalue of the center pixel to be considered for computing the value.
Output image.
Return the local number (population) of pixels.
>>> from skimage.morphology import squareSee :
... import skimage.filters.rank as rank
... img = 255 * np.array([[0, 0, 0, 0, 0],
... [0, 1, 1, 1, 0],
... [0, 1, 1, 1, 0],
... [0, 1, 1, 1, 0],
... [0, 0, 0, 0, 0]], dtype=np.uint16)
... rank.pop_bilateral(img, square(3), s0=10, s1=10) array([[3, 4, 3, 4, 3], [4, 4, 6, 4, 4], [3, 6, 9, 6, 3], [4, 4, 6, 4, 4], [3, 4, 3, 4, 3]], dtype=uint16)
The following pages refer to to this document either explicitly or contain code examples using this.
skimage.filters.rank.bilateral.pop_bilateral
Hover to see nodes names; edges to Self not shown, Caped at 50 nodes.
Using a canvas is more power efficient and can get hundred of nodes ; but does not allow hyperlinks; , arrows or text (beyond on hover)
SVG is more flexible but power hungry; and does not scale well to 50 + nodes.
All aboves nodes referred to, (or are referred from) current nodes; Edges from Self to other have been omitted (or all nodes would be connected to the central node "self" which is not useful). Nodes are colored by the library they belong to, and scaled with the number of references pointing them