U
    ƒ±Ëhá	  ã                
   @   s¢   d dl Zd dlZd dlmZ d dlmZ d dlmZm	Z	m
Z
mZ e	ƒ e dejejg¡dd„ ƒƒZe dejejg¡e dd	d
dd ddg¡dd„ ƒƒZdd„ ZdS )é    N)Ú
quickshift)Útesting)Úassert_greaterÚrun_in_parallelÚassert_equalÚassert_array_equalÚdtypec              	   C   s  t j d¡}t  d¡}d|d d…dd …f< d|dd …d d…f< d|dd …dd …f< |d|j|jd 7 }|j| d	d
}t|dddd	dd}t 	dg¡ t|dddd	dd W 5 Q R X t
tt  |¡ƒdƒ tdƒD ]6}t j|||k dddddgdd }t|| dƒ qÒd S )Nr   )é   é   gš™™™™™É?é
   gš™™™™™Ù?g333333ã?gš™™™™™©?©ÚsizeF©Úcopyé   é   )Úkernel_sizeÚmax_distÚrngÚconvert2labÚsigmaz&`random_seed` is a deprecated argument)r   r   Zrandom_seedr   r   é   gš™™™™™¹?g333333Ó?g      à?é   )Zbinsr	   )ÚnpÚrandomÚdefault_rngÚzerosÚnormalÚshapeÚastyper   r   Zexpected_warningsr   ÚlenÚuniqueÚrangeZ	histogramr   )r   r   ÚimgÚsegÚiÚhist© r'   úN/tmp/pip-unpacked-wheel-gtraehzf/skimage/segmentation/tests/test_quickshift.pyÚ	test_grey	   s(    

 ÿ
 ÿ$r)   Úchannel_axiséýÿÿÿéþÿÿÿéÿÿÿÿr   r   c              	   C   sº  t j d¡}t  d¡}d|d d…d d…df< d|dd …d d…df< d|dd …dd …df< |d|j|jd 7 }d||dk< d||dk < |j| d	d
}t j|d|d}t|dddd|d}t	t
t  |¡ƒ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ƒ t|dddd	d|d}t
t  |¡ƒdksbt‚|dd d …f |dd d …f k ¡ sŒt‚|d d …df |d d …df k ¡ s¶t‚d S )NiaiÆ")r	   r
   r   r   r   r   r   g{®Gáz„?r   Fr   r-   )ÚsourceZdestinationé   )r   r   r   r   r*   r   r   )r   r   r   r   r   r*   é	   )r   r   r   r   r   r   r   Zmoveaxisr   r   r    r!   r   ÚAssertionErrorÚall)r   r*   r   r#   r$   Zseg2r'   r'   r(   Ú
test_color    s4    
ÿ
 þ*r3   c               	   C   s4   t  d¡} tjtdd t| dd W 5 Q R X d S )N)r	   r
   r   z-Only RGB images can be converted to Lab space)ÚmatchT)r   )r   r   ÚpytestZraisesÚ
ValueErrorr   )r#   r'   r'   r(   Útest_convert2lab_not_rgbA   s    
 ÿr7   )Znumpyr   r5   Zskimage.segmentationr   Zskimage._sharedr   Zskimage._shared.testingr   r   r   r   ZparametrizeZfloat32Zfloat64r)   r3   r7   r'   r'   r'   r(   Ú<module>   s   