
    Џkh$                     f   d Z ddlZddlmZ ddlmZ 	 d5dZ	 d6dZeZ		 d7dZ
e
Z	 d8dZd8d	Z	 d9d
Z	 d9dZd:dZeZd;dZeZ	 	 d<dZ	 	 d=dZ	 	 d>dZd?dZd@dZeZd@dZd@dZdAdZ	 dBdZd:dZeZd Z 	 d9dZ!	 d;dZ"	 d:dZ#d:dZ$	 dCdZ%dCdZ&d:d Z'd! Z(d:d"Z)d:d#Z*d;d$Z+e+Z,e+Z-dCd%Z.e.Z/e.Z0e.Z1e.Z2e.Z3e.Z4e.Z5e.Z6e.Z7e.Z8e8Z9	 d9d&Z:e:Z;e:Z<	 dDd'Z=e=Z>e=Z?e=Z@e=ZAe=ZBe=ZCe=ZD	 d9d(ZEd;d)ZFeFZG	 d9d*ZH	 dEd+ZId:d,ZJd-ej                  fd.ZLd-dej                  fd/ZMdFd0ZNd1 ZO	 d9d2ZPdCd3ZQd:d4ZRy)Ga  Delegators for alternative backends in scipy.ndimage.

The signature of `func_signature` must match the signature of ndimage.func.
The job of a `func_signature` is to know which arguments of `ndimage.func`
are arrays.

* signatures are generated by

--------------
import inspect
from scipy import ndimage

names = [x for x in dir(ndimage) if not x.startswith('_')]
objs = [getattr(ndimage, name) for name in names]
funcs = [obj for obj in objs if inspect.isroutine(obj)]

for func in funcs:
    sig = inspect.signature(func)
    print(f"def {func.__name__}_signature{sig}:
	pass

")
---------------

* which arguments to delegate on: manually trawled the documentation for
  array-like and array arguments

    Narray_namespace)_skip_if_dtypec                 .    t        | |t        |            S Nr   r   )inputmatrixoffsetoutput_shapeoutputargskwdss          U/var/www/teggl/fontify/venv/lib/python3.12/site-packages/scipy/ndimage/_delegators.pyaffine_transform_signaturer      s     5&.*@AA    c                 .    t        | |t        |            S r   r   )r	   	structure
iterationsr   r   r   s         r   binary_closing_signaturer   %        5)^F-CDDr   c                 0    t        | |t        |      |      S r   r   )r	   r   r   maskr   r   r   s          r   binary_dilation_signaturer   -   s     5)^F-CTJJr   c                 .    t        | |t        |            S r   r   )r	   r   r   originr   kwargss         r   binary_fill_holes_signaturer   5   r   r   c                 .    t        | |t        |            S r   r   )r	   r   r   r   s       r   label_signaturer    ;   s    5)^F-CDDr   c                 0    t        | ||t        |            S r   r   )r	   
structure1
structure2r   r   r   s         r   binary_hit_or_miss_signaturer$   ?   s     5*j.:PQQr   c                 0    t        | ||t        |            S r   r   )r	   r   r   r   r   r   s         r   binary_propagation_signaturer&   E   s     5)T>&3IJJr   c                 .    t        | |t        |            S r   r   )r	   weightsr   r   r   s        r   convolve_signaturer)   K       5'>&+ABBr   c                 .    t        | |t        |            S r   r   )r	   r(   axisr   r   r   s         r   convolve1d_signaturer.   Q   r*   r   c                     t        | ||      S r   r   )r	   metricsamplingreturn_distancesreturn_indices	distancesindicess          r   distance_transform_bf_signaturer6   W        5)W55r   c                     t        | ||      S r   r   )r	   r0   r2   r3   r4   r5   s         r    distance_transform_cdt_signaturer9   ^   r7   r   c                     t        | ||      S r   r   )r	   r1   r2   r3   r4   r5   s         r    distance_transform_edt_signaturer;   e   r7   r   c                     t        |       S r   r   )r	   	max_labels     r   find_objects_signaturer>   l   s    5!!r   c                 ,    t        | t        |            S r   r   )r	   sizenr-   r   s        r   fourier_ellipsoid_signaturerB   p       5."899r   c                 ,    t        | t        |            S r   r   )r	   sigmarA   r-   r   s        r   fourier_gaussian_signaturerF   v   rC   r   c                 ,    t        | t        |            S r   r   )r	   shiftrA   r-   r   s        r   fourier_shift_signaturerI   y   rC   r   c                 ,    t        | t        |            S r   r   )r	   rE   orderr   r   r   s         r   gaussian_filter_signaturerL   }   rC   r   c                 ,    t        | t        |            S r   r   )r	   rE   r-   rK   r   r   r   s          r   gaussian_filter1d_signaturerN           5."899r   c                 ,    t        | t        |            S r   r   )r	   rE   r   r   r   s        r   %gaussian_gradient_magnitude_signaturerQ      rC   r   c                     t         S r   )np)rankconnectivitys     r   #generate_binary_structure_signaturerV      s    Ir   c                 .    t        | |t        |            S r   r   r	   functionr@   	footprintr   r   r   s          r   generic_filter_signaturer[      s     5)^F-CDDr   c                 ,    t        | t        |            S r   r   )r	   rY   filter_sizer-   r   r   r   s          r   generic_filter1d_signaturer^      rO   r   c                 ,    t        | t        |            S r   r   )r	   
derivativer   r   r   s        r   $generic_gradient_magnitude_signaturera      s     5."899r   c                 ,    t        | t        |            S r   r   )r	   derivative2r   r   r   s        r   generic_laplace_signaturerd      s    5."899r   c                 ,    t        | t        |            S r   r   )r	   mappingr   r   r   r   s         r   geometric_transform_signaturerg      rO   r   c                     t        | |      S r   r   )r	   minmaxbinslabelsindexs         r   histogram_signaturern          5&))r   c                     t        |       S r   r   )r   r   r   s      r   iterate_structure_signaturerq      s    9%%r   c                     t        | |      S r   r   )r	   rl   r   r   s       r   labeled_comprehension_signaturers      ro   r   c                 ,    t        | t        |            S r   r   )r	   r   r   r   s       r   laplace_signatureru      rC   r   c                 .    t        | |t        |            S r   r   )r	   coordinatesr   r   r   s        r   map_coordinates_signaturerx      s    5+~f/EFFr   c                 ,    t        | t        |            S r   r   )r	   r@   r-   r   r   r   s         r   maximum_filter1d_signaturerz      rC   r   c                     t        | ||      S r   r   )r	   rl   rm   s      r   maximum_signaturer|      s    5&%00r   c                 .    t        | |t        |            S r   r   )r	   r@   rZ   r   r   r   s         r   median_filter_signaturer~      r   r   c                 0    t        | ||t        |            S r   r   )r	   r@   rZ   r   r   r   r   s          r    morphological_gradient_signaturer      s     5)Yv8NOOr   c                 .    t        | |t        |            S r   r   )r	   
percentiler@   rZ   r   r   r   s          r   percentile_filter_signaturer      r   r   c                 ,    t        | t        |            S r   r   )r	   r-   r   r   r   s        r   prewitt_signaturer      rC   r   c                 .    t        | |t        |            S r   r   )r	   rT   r@   rZ   r   r   r   s          r   rank_filter_signaturer     r   r   c                 ,    t        | t        |            S r   r   )r	   angleaxesreshaper   r   r   s          r   rotate_signaturer     rO   r   c                 ,    t        | t        |            S r   r   )r	   rH   r   r   r   s        r   shift_signaturer     rC   r      c                 ,    t        | t        |            S r   r   )r	   rK   r   r   r   s        r   spline_filter_signaturer     rC   r   c                 ,    t        | t        |            S r   r   )r	   rK   r-   r   r   r   s         r   spline_filter1d_signaturer     rO   r   c                 ,    t        | t        |            S r   r   )r	   r@   r   r   r   s        r   uniform_filter_signaturer     rC   r   c                     t        |       S r   r   )arrr   r   s      r   value_indices_signaturer     s    3r   c                 .    t        | |t        |            S r   r   rX   s          r   vectorized_filter_signaturer   #  r   r   c                 0    t        | ||t        |            S r   r   )r	   markersr   r   s       r   watershed_ift_signaturer   )  s    5'9nV6LMMr   c                 ,    t        | t        |            S r   r   )r	   zoomr   r   r   s        r   zoom_signaturer   -  rC   r   )g        NN)N   N)Nr   NN)NNr   )NNNr   )r+   N)	euclideanNTFNN)
chessboardTFNN)NTFNN)r   )r+   r+   N)r   N)r+   r   N)NN)NNNN))r   r   TN)r   N)S__doc__numpyrS   scipy._lib._array_apir   scipy.ndimage._ni_supportr   r   r   binary_opening_signaturer   binary_erosion_signaturer   r    r$   r&   r)   correlate_signaturer.   correlate1d_signaturer6   r9   r;   r>   rB   fourier_uniform_signaturerF   rI   rL   rN   rQ   gaussian_laplace_signaturerV   r[   r^   ra   rd   rg   rn   rq   rs   ru   rx   rz   minimum_filter1d_signatureuniform_filter1d_signaturer|   minimum_signaturemedian_signaturemean_signaturevariance_signaturestandard_deviation_signaturesum_labels_signaturesum_signaturemaximum_position_signatureminimum_position_signatureextrema_signaturecenter_of_mass_signaturer~   minimum_filter_signaturemaximum_filter_signaturer   morphological_laplace_signaturewhite_tophat_signatureblack_tophat_signaturegrey_closing_signaturegrey_dilation_signaturegrey_erosion_signaturegrey_opening_signaturer   r   sobel_signaturer   r   r   float64r   r   r   r   r   r   r    r   r   <module>r      s\  2  1 4 :>B 15E
 4  <@K
 5  01EE
 59R .2KC ) C -  @D266 GL 6 AF 6": 8 :::
 ,0:: C  8<E 37: #:: /3:*&*:G: 8 7 1 & $ "& 0 ( !. . % ,  .2E
 3 2  >BP
 #C 9 9 9 : 9 9  :>E: $ 48E 59:: *+2:: :
 BJJ:: 
 8<EN:r   