U
    h                     @   sv   d dl Zd dlZd dlmZ d dlmZmZmZm	Z	m
Z
 dd Zdd Zdd	 Zd
d Zejje dddd ZdS )    N)has_mpl)FeatureDetectorDescriptorExtractor_prepare_grayscale_input_2D_mask_border_keypointsplot_matchesc                	   C   s&   t t t d  W 5 Q R X d S N)pytestraisesNotImplementedErrorr   detect r   r   C/tmp/pip-unpacked-wheel-gtraehzf/skimage/feature/tests/test_util.pytest_feature_detector
   s    r   c                	   C   s(   t t t d d  W 5 Q R X d S r   )r	   r
   r   r   extractr   r   r   r   test_descriptor_extractor   s    r   c                	   C   s   t t ttd W 5 Q R X t t ttd W 5 Q R X t t ttd W 5 Q R X ttd ttd ttd d S )N)   r   r   )r      )r   r   r   )r   r   )r   r   r   )r   r   r   )r	   r
   
ValueErrorr   npzerosr   r   r   r   test_prepare_grayscale_input_2D   s    r   c                  C   s   t ddgddgddgddgddgg} t jtd| ddddddg t jtd| ddddddg t jtd| ddddddg t jtd| ddddddg t jtd| ddddddg d S )	Nr   r      r      
   r   )r   r      )r   arrayZtestingZassert_equalr   )	keypointsr   r   r   test_mask_border_keypoints    s     (r   zMatplotlib not installed)reasonc               
   C   s  ddl m}  | jddd\}}d}dtjdd }dtjdd }tjjddd}tjjddd}t||f}|D ]\}	}
t|	}t|
}t	|||||| t	||||||d	d
 t	||||||dd t	||||||dd t	||||||dd qxd S )Nr   )pyplotr   )ZnrowsZncols))r   r   )r      r   )r   r   r#   )r   r#   r#   )r"   r   )r$   r   )r%   r   r   r   )sizeT)Zonly_matchesr)Zkeypoints_color)Zmatches_colorZvertical)	alignment)
Z
matplotlibr!   Zsubplotsr   randomZrandrandintZcolumn_stackr   r   )ZpltZfigZaxZshapesZ
keypoints1Z
keypoints2Zidxs1Zidxs2matchesZshape1Zshape2Zimg1Zimg2r   r   r   test_plot_matches.   s0    

r,   )Znumpyr   r	   Z"skimage._shared._dependency_checksr   Zskimage.feature.utilr   r   r   r   r   r   r   r   r   markZskipifr,   r   r   r   r   <module>   s   