o
    hV                     @   s   d dl Z 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 d dlmZ dd Ze jdg d	d
d Ze jdg d	dd Zdd Ze jdg d	dd Zdd ZdS )    N)assert_array_equal)data)BRIEFcorner_peakscorner_harris)testingc                  C   s^   t d} t ddgddgg}tt t | | W d   dS 1 s(w   Y  dS )z=Brief descriptors can be evaluated on gray-scale images only.)   r                  N)npzerosasarrayr   raises
ValueErrorr   extract)img	keypoints r   [/var/www/html/scripts/venv/lib/python3.10/site-packages/skimage/feature/tests/test_brief.py"test_color_image_unsupported_error   s
   
"r   dtype)float32float64uint8intc              
   C   s   t  | }tt|dddd}tddd}|||dd  tjg d	g d
g d	g dg d
g dg d	g dgt	d}t
|j| dS )zDVerify the computed BRIEF descriptors with expected for normal mode.r   r   皙?min_distancethreshold_absthreshold_rel      )descriptor_sizesigmaN)   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   coinsastyper   r   r   r   r   arrayboolr   descriptorsr   r   r   	extractorexpectedr   r   r   test_normal_mode   s$   

	r1   c              
   C   s   t  | }tt|dddd}tddddd	}td
g tddddd W d   n1 s2w   Y  |||dd  t	j
g dg dg dg dg dg dg dg dgtd}t|j| dS )zEVerify the computed BRIEF descriptors with expected for uniform mode.r   r   r   r   r#   r$   uniformr'   )r%   r&   moderngz&`sample_seed` is a deprecated argument)r%   r&   r3   sample_seedN)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   r   r'   r(   )r   r)   r*   r   r   r   r   expected_warningsr   r   r+   r,   r   r-   r.   r   r   r   test_uniform_mode,   s*   

	r7   c                   C   s:   t t tdd W d    d S 1 sw   Y  d S )Nfoobar)r3   )r   r   r   r   r   r   r   r   test_unsupported_modeF   s   "r9   c                 C   sl   t jd| d}t ddgddgddgddgg}tddd}||| |jjd	 d
ks.J t|jd d S )Nd   r;   r(   r'   r   2   P   )   
patch_sizer4   r   r	   )FTTT)	r   r   r+   r   r   r-   shaper   mask)r   r   r   r/   r   r   r   test_borderK   s   "rC   c                  C   s   t jdtd} t ddgddgddgddgg}t j }td|d}t|j	 }|  |
| | t|j	 }||ksCJ d S )	Nr:   r(   r'   r   r<   r=   r>   r?   )r   r   r   r+   randomdefault_rngr   copydeepcopyr4   r   )r   r   r4   r/   xzr   r   r   test_independent_rngW   s   "
rJ   )pytestrF   numpyr   skimage._shared.testingr   skimager   skimage.featurer   r   r   skimage._sharedr   r   markparametrizer1   r7   r9   rC   rJ   r   r   r   r   <module>   s     


