
    1-Ph\                        d dl Zd dlZd dlmZmZ d dlmZ d dlm	Z	m
Z
 dZd Zd Zej                            dej        ej        ej        ej        g          d	             Zd
 Zej                            dej        ej        ej        g          d             Zej                            dg d          d             ZdS )    N)assert_array_equalassert_allclose)_supported_float_type)find_boundariesmark_boundaries)   r   r   c                      t          j        dt           j                  } d| ddddf<   t          j        g dg dg dg d	g d	g d	g dg dg dg dg
          }t	          |           }t          ||           d S )
N
   r   dtyper         
r   r   r   r   r   r   r   r   r   r   
r   r   r   r   r   r   r   r   r   r   
r   r   r   r   r   r   r   r   r   r   
r   r   r   r   r   r   r   r   r   r   )npzerosuint8arrayr   r   imagerefresults      j/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/skimage/segmentation/tests/test_boundaries.pytest_find_boundariesr      s    HXRX...EE!A#qs(O
(******************************	
 C U##Fvs#####    c                      t          j        dt                    } d| ddddf<   t          j        g dg dg dg d	g d	gt                    }t	          |           }t          ||           d S )
N)   r    r   Tr   r    )FFFFF)FFTTT)FTTTT)FTTFF)r   r   boolr   r   r   r   s      r   test_find_boundaries_boolr"   #   s    HV4(((EE!A#qs(O
(///,,,+++------	
 	 	 	C U##Fvs#####r   r   c                 ~   t          j        d|           }t          j        dt           j                  }d|ddddf<   t          j        g dg dg dg d	g d	g d	g dg dg dg dg
          }t	          ||t
          d
          }|j        t          |           k    sJ t          j        |d          }t          ||           t          j        g dg dg dg dg dg dg dg dg dg dg
          }t	          ||t
          dd
          }t          j        |d          }t          ||           d S )Nr
   r   r   r   r   r   r   r   r   thickcolormodeaxis)
r   r   r   r   r   r   r   r   r   r   )
r   r   r   r   r   r   r   r   r   r   )
r   r   r   r   r   r   r   r   r   r   )
r   r   r   r   r   r   r   r   r   r   )
r   r   r   r   r   r   r   r   r   r   )r   r   r   )r&   outline_colorr'   )
r   r   r   r   r   whiter   r   meanr   )r   r   label_imager   markedr   s         r   test_mark_boundariesr0   5   s   HXU+++E(828444KK!QqS
(******************************	
 C UKu7KKKF<0777777WV"%%%Fvs###
(******************************	
 C {%yw  F WV"%%%Fvs#####r   c                  r   t          j        dt                    } t          j        dt           j                  }d|ddddf<   t          j        g dg dg dg d	g d	g d	g dg dg dg dg
          }t          | |t          d
          }t          j        |d          }t          ||           d S )Nr
   r   r   r   r   r   r   r   r   r$   r%   r(   r)   )	r   r   r!   r   r   r   r,   r-   r   )r   r.   r   r/   r   s        r   test_mark_boundaries_boolr2   d   s    HXT***E(828444KK!QqS
(******************************	
 C UKu7KKKFWV"%%%Fvs#####r   c                 ^   t          j        g dg dg dg dg dgt           j                  }t           j                            d           t          j        t          j        j        |j         d          }|                    | d          }t          ||t          d	
          }|j        t          |           k    sJ t          j        t          j        |d          d          }t          j        g dg dg dg dg dg dg dg dg dg	          }t          ||d           d S )N)r   r   r   r   )r   r   r    r   )r   r   r    r   r   r   r   F)copysubpixelr%   r(   r)   )皙?g)\(?
ףp=
?Gz?g333333?r6   HzG?)g?g(\?r7         ?r:   r:   r8   )gzG?r9   g?r:   g)\(?r:   {Gz?)r8   r:   r:   r:   r8   r:   (\?)gQ?r:   RQ?r:   gHzG?r:   g(\?)r;   r:   r:   r:   r=   r:   g{Gz?)g=
ףp=?(\?g(\?r:   gQ?r:   g
ףp=
?)g?gp=
ף?gq=
ףp?r:   r:   r:   r9   )g{Gz?gffffff?r<   g?r>   gQ?gףp=
?g{Gz?)atol)r   r   r   randomseedroundrandshapeastyper   r,   r   r   r-   r   )r   labelsr   r/   marked_proj
ref_results         r   test_mark_boundaries_subpixelrI   }   s\   X	|||\\\<<<Nh  F INN1HRY^V\2A66ELLUL++EUF%jIIIF<0777777(276333Q77K555333444222333222444222555
	
 J K$777777r   r'   )r$   innerouterr5   c                     t          j        dt                    }t          ||           }t          j        |dk              sJ dS )z+A constant-valued image has not boundaries.)   rM   r   )r'   r   N)r   onesintr   all)r'   rN   bs      r   test_boundaries_constant_imagerR      sH     76%%%D4(((A6!q&>>r   )numpyr   pytestnumpy.testingr   r   skimage._shared.utilsr   skimage.segmentationr   r   r,   r   r"   markparametrizer   float16float32float64r0   r2   rI   rR    r   r   <module>r^      sM        = = = = = = = = 7 7 7 7 7 7 A A A A A A A A 	$ $ $.$ $ $$ 28RZRZ"PQQ+$ +$ RQ+$\$ $ $2 2:rz2:"FGG8 8 HG88 !H!H!HII  JI  r   