skimage 0.17.2

NotesParametersReturnsBackRef
hough_circle_peaks(hspaces, radii, min_xdistance=1, min_ydistance=1, threshold=None, num_peaks=inf, total_num_peaks=inf, normalize=False)

Identifies most prominent circles separated by certain distances in given Hough spaces. Non-maximum suppression with different sizes is applied separately in the first and second dimension of the Hough space to identify peaks. For circles with different radius but close in distance, only the one with highest peak is kept.

Notes

Circles with bigger radius have higher peaks in Hough space. If larger circles are preferred over smaller ones, :None:None:`normalize` should be False. Otherwise, circles will be returned in the order of decreasing voting number.

Parameters

hspaces : (N, M) array

Hough spaces returned by the hough_circle function.

radii : (M,) array

Radii corresponding to Hough spaces.

min_xdistance : int, optional

Minimum distance separating centers in the x dimension.

min_ydistance : int, optional

Minimum distance separating centers in the y dimension.

threshold : float, optional

Minimum intensity of peaks in each Hough space. Default is :None:None:`0.5 * max(hspace)`.

num_peaks : int, optional

Maximum number of peaks in each Hough space. When the number of peaks exceeds :None:None:`num_peaks`, only :None:None:`num_peaks` coordinates based on peak intensity are considered for the corresponding radius.

total_num_peaks : int, optional

Maximum number of peaks. When the number of peaks exceeds :None:None:`num_peaks`, return :None:None:`num_peaks` coordinates based on peak intensity.

normalize : bool, optional

If True, normalize the accumulator by the radius to sort the prominent peaks.

Returns

accum, cx, cy, rad : tuple of array

Peak values in Hough space, x and y center coordinates and radii.

Return peaks in a circle Hough transform.

Examples

This example is valid syntax, but we were not able to check execution
>>> from skimage import transform, draw
... img = np.zeros((120, 100), dtype=int)
... radius, x_0, y_0 = (20, 99, 50)
... y, x = draw.circle_perimeter(y_0, x_0, radius)
... img[x, y] = 1
... hspaces = transform.hough_circle(img, radius)
... accum, cx, cy, rad = hough_circle_peaks(hspaces, [radius,])
See :

Back References

The following pages refer to to this document either explicitly or contain code examples using this.

skimage.transform.hough_transform.hough_circle_peaks

Local connectivity graph

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


File: /skimage/transform/hough_transform.py#270
type: <class 'function'>
Commit: