o
    c«ÏiE  ã                   @   s8  d Z ddlmZmZmZmZ ddlmZmZm	Z	m
Z
mZmZ ddlmZmZmZmZ ddlmZmZmZmZmZmZmZmZmZmZmZmZmZm Z  ddl!m"Z" ddl#m$Z$m%Z%m&Z& dd	l'm(Z(m)Z) dd
l*m+Z+ ddl,m-Z-m.Z.m/Z/ ddl0m1Z1m2Z2m3Z3m4Z4 ddl5m6Z6m7Z7 ddl8m9Z9m:Z:m;Z;m<Z<m8Z8m=Z= g d¢Z>dS )zBMorphological algorithms, e.g., closing, opening, skeletonization.é   )Úbinary_closingÚbinary_dilationÚbinary_erosionÚbinary_opening)Úblack_tophatÚclosingÚdilationÚerosionÚopeningÚwhite_tophat)Úisotropic_erosionÚisotropic_dilationÚisotropic_openingÚisotropic_closing)ÚballÚcubeÚdiamondÚdiskÚellipseÚfootprint_from_sequenceÚfootprint_rectangleÚmirror_footprintÚoctagonÚ
octahedronÚpad_footprintÚ	rectangleÚsquareÚstaré   )Úlabel)Úmedial_axisÚskeletonizeÚthin)Úconvex_hull_imageÚconvex_hull_object)Úreconstruction)Úremove_small_holesÚremove_small_objectsÚremove_objects_by_distance)Úh_maximaÚh_minimaÚlocal_minimaÚlocal_maxima)ÚfloodÚ
flood_fill)Úarea_openingÚarea_closingÚdiameter_closingÚdiameter_openingÚmax_treeÚmax_tree_local_maxima)/r0   r/   r   r   r   r   r   r   r   r#   r$   r1   r2   r   r   r   r   r	   r-   r.   r   r   r)   r*   r   r   r   r   r   r,   r+   r3   r4   r    r   r   r   r
   r   r%   r&   r'   r(   r!   r   r"   r   N)?Ú__doc__Úbinaryr   r   r   r   Úgrayr   r   r   r	   r
   r   Ú	isotropicr   r   r   r   Ú
footprintsr   r   r   r   r   r   r   r   r   r   r   r   r   r   Úmeasure._labelr   Ú_skeletonizer    r!   r"   Úconvex_hullr#   r$   Úgrayreconstructr%   Úmiscr&   r'   r(   Úextremar)   r*   r+   r,   Ú_flood_fillr-   r.   r3   r/   r0   r1   r2   r4   Ú__all__© rB   rB   úe/var/www/addictedbytheproject.nl/epg/venv/lib/python3.10/site-packages/skimage/morphology/__init__.pyÚ<module>   s     @ 	