ó
 ‰\c           @   s¤   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 d „  Z d	 „  Z d
 „  Z d S(   iÿÿÿÿN(   t   data(   t   felzenszwalb(   t   testing(   t   assert_greatert   test_parallelt   assert_equalt   assert_array_equalt   assert_warnst   assert_no_warningsc       	   C   sï   t  j d ƒ }  d |  d  d … d d  … f <d |  d d  … d  d … f <d |  d d  … d d  … f <t |  d d ƒ} t t t  j | ƒ ƒ d	 ƒ xW t d	 ƒ D]I } t  j |  | | k d
 d d d d d g ƒd } t | | d ƒ qž Wd  S(   Ni   i   gš™™™™™É?i
   gš™™™™™Ù?g333333ã?t   sigmai    i   t   binsgš™™™™™¹?g333333Ó?g      à?i   i(   (   i   i   (	   t   npt   zerosR   R   t   lent   uniquet   ranget	   histogramR   (   t   imgt   segt   it   hist(    (    sK   lib/python2.7/site-packages/skimage/segmentation/tests/test_felzenszwalb.pyt	   test_grey   s    2c          C   s  t  j ƒ  d d … d d … f }  xa t j d d d ƒ D]J } t |  d | d d	 ƒ} t j | j ƒ  ƒ } t | j ƒ  d
 | ƒ q8 Wt  j	 ƒ  d  d  d … d  d  d … f } xa t j d d d ƒ D]J } t | d | d d	 ƒ} t j | j ƒ  ƒ } t | j ƒ  d
 | ƒ qÄ Wd  S(   Ni   i¨   i    i€   i
   id   t   min_sizeR	   i   i   i   (
   R    t   coinsR   t   arangeR   t   bincountt   ravelR   t   mint   coffee(   R   R   t   segmentst   countsR   (    (    sK   lib/python2.7/site-packages/skimage/segmentation/tests/test_felzenszwalb.pyt   test_minsize   s    "(c       
   C   sÊ   t  j d ƒ }  t  j d ƒ } t  j d ƒ } t ƒ  5 t |  d t ƒt |  d t ƒt | d t ƒWd  QXt t ƒ  t | d t ƒWd  QXt j	 t
 ƒ % t | d t ƒt | d t ƒWd  QXd  S(   Ni
   i   t   multichannel(   i
   i
   (   i
   i
   i   (   i
   i
   i
   (   R   R   R   R   t   Truet   FalseR   t   RuntimeWarningR   t   raisest
   ValueError(   t   grey_imgt   rgb_imgt   three_d_img(    (    sK   lib/python2.7/site-packages/skimage/segmentation/tests/test_felzenszwalb.pyt   test_3D,   s    
c          C   s*  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 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 ƒ d  S(   Ni   i   i   i   i
   i    i   R	   i   (   i   i   i   (   R   R   R   R   R   R   R   (   R   R   (    (    sK   lib/python2.7/site-packages/skimage/segmentation/tests/test_felzenszwalb.pyt
   test_color;   s    ###c          C   s™   t  j d d g d d g g ƒ }  t |  d d d d d d ƒ} t t t  j | ƒ ƒ d ƒ t | d d  d  … f d ƒ t | d d  d  … f d ƒ d  S(	   Ni    g333333Ó?gffffffæ?i   t   scaleR	   R   i   (   R   t   arrayR   R   R   R   R   (   R   R   (    (    sK   lib/python2.7/site-packages/skimage/segmentation/tests/test_felzenszwalb.pyt   test_mergingJ   s
    !(   t   numpyR   t   skimageR    t   skimage.segmentationR   t   skimage._sharedR   t   skimage._shared.testingR   R   R   R   R   R   R   R   R)   R*   R-   (    (    (    sK   lib/python2.7/site-packages/skimage/segmentation/tests/test_felzenszwalb.pyt   <module>   s   .			