
    |h%                         d dl Zd dlmZ d dlmZ d dlmZ d dlm	Z	m
Z
mZmZmZmZ  e
       d        Zd Z ej"                  dd d	g      d
        Zd Zd Zy)    N)data)felzenszwalb)testing)assert_greaterrun_in_parallelassert_equalassert_array_equalassert_warnsassert_no_warningsc                  \   t        j                  d      } d| d ddd f<   d| dd d df<   d| dd dd f<   t        | d      }t        t	        t        j
                  |            d       t        d      D ]3  }t        j                  | ||k(     g d	
      d   }t        ||   d       5 y )N)      g?
   g?g333333?r   sigma   )r   g?333333?g      ?   )bins(   )	npzerosr   r   lenuniquerange	histogramr   )imgsegihists       k/var/www/html/test/engine/venv/lib/python3.12/site-packages/skimage/segmentation/tests/test_felzenszwalb.py	test_greyr"      s     ((8
CCRSMCSbSMCRSM
s!
$CRYYs^$a(1X $||CqM0EFqItAw#$    c                  $   t        j                         ddddf   } t        j                  ddd      D ]P  }t	        | |d      }t        j
                  |j                               }t        |j                         d	z   |       R t        j                         d d d
d d d
f   }t        j                  ddd      D ]P  }t	        ||d      }t        j
                  |j                               }t        |j                         d	z   |       R y )Nr      r      r   d      )min_sizer   r   r   )
r   coinsr   aranger   bincountravelr   mincoffee)r   r)   segmentscountsr/   s        r!   test_minsizer2       s    
**,r#vqu}
%CIIb#r* 3ha@X^^-.vzz|a'2	3 [[]3Q3!8$FIIb#r* 3CX^^-.vzz|a'2	3r#   channel_axisc                 .   t        j                  d      }t        j                  d      }t        j                  d      }t        j                  |d|       }t               5  t	        |d       t	        |d        t	        ||        d d d        t        t              5  t	        ||        d d d        t        j                  t              5  t	        |d        t	        |d        d d d        y # 1 sw Y   kxY w# 1 sw Y   RxY w# 1 sw Y   y xY w)N)r   r   )r   r   r(   )r   r   r   r4   )r3   )
r   r   moveaxisr   r   r
   RuntimeWarningr   raises
ValueError)r3   grey_imgrgb_imgthree_d_imgs       r!   test_3Dr=   1   s    xx!Hhh{#G((<(Kkk'2|4G		 9XB/XD1W<89 
n	% =[|<=	
	# 5W40[t45 59 9= =5 5s$   !(C3 C?D3C<?DDc                     t        j                  d      } d| d dd ddf<   d| dd d ddf<   d| dd dd df<   t        | d      }t        t	        t        j
                  |            d       t        |d dd df   d       t        |dd d df   d       t        |d ddd f   d       t        |dd dd f   d       y )	N)r   r   r(   r   r   r      r   r   r(   )r   r   r   r   r   r   r	   r   r   s     r!   
test_colorrA   C   s    
((;
CCSbS!CSbS!CRS!
s!
$CRYYs^$a(s3B38}a(s238}a(s3B38}a(s238}a(r#   c                      t        j                  ddgddgg      } t        | ddd      }t        t	        t        j
                  |            d       t        |dd d f   d       t        |dd d f   d       y )Nr   r   gffffff?r   r?   )scaler   r)   )r   arrayr   r   r   r   r	   r@   s     r!   test_mergingrE   R   sh    
((QHsAh'
(C
s!1q
9CRYYs^$a(s1a4y!$s1a4y!$r#   )numpyr   skimager   skimage.segmentationr   skimage._sharedr   skimage._shared.testingr   r   r   r	   r
   r   r"   r2   parametrizer=   rA   rE    r#   r!   <module>rM      sh      - #  $ $3" ^aW-5 .5")%r#   