
    9i                        S SK rS SKrS SKJr  S SKJr  SSKJr  \R                  R                  S\R                  \R                  \R                  /5      \R                  R                  SSS	/5      \R                  R                  S
SS	/5      S 5       5       5       r\R                  R                  SSS	/5      \R                  R                  S
SS	/5      S 5       5       rS rS rS rS rS rg)    N)_supported_float_type)optical_flow_ilk   )_sin_flow_gendtypegaussianTF	prefilterc           	         [         R                  R                  S5      nUR                  SS9n[	        U5      u  pVUR                  U SS9n[        U 5      n[        XFXUS9nUR                  [        U 5      :X  d   e[        X-
  5      R                  5       S:  d   eX:w  a/  [        R                  " [        5         [        XFXU S9  S S S 5        g g ! , (       d  f       g = f)Nr      r   sizeF)copy)r   r	   r         ?)nprandomdefault_rngnormalr   astyper   r   r   absmeanpytestraises
ValueError)	r   r   r	   rngimage0gt_flowimage1float_dtypeflows	            c/var/www/html/land-doc-ocr/venv/lib/python3.13/site-packages/skimage/registration/tests/test_ilk.pytest_2d_motionr"   	   s    
 ))


"CZZZZ(F#F+OG]]5u]-F'.KkD ::.u5555t~##%+++]]:&e '& &&s   =C
C!c                     [         R                  R                  S5      nUR                  SS9n[	        USS9u  pE[        X5SXS9n[        Xd-
  5      R                  5       S:  d   eg )	N{   )2   7   <   r      )npics   )radiusr   r	   r   )r   r   r   r   r   r   r   r   )r   r	   r   r   r   r   r    s          r!   test_3d_motionr,   "   sg     ))


$CZZ\Z*F#F!4OGq8D
 t~##%+++    c                      [         R                  R                  S5      n U R                  SS9n[	        X5      n[         R
                  " US:H  5      (       d   eg )Nr   r   r   r   r   r   r   r   allr   imgr    s      r!   test_no_motion_2dr3   2   sI    
))


"C
****
%CC%D66$!)r-   c                      [         R                  R                  S5      n U R                  SS9n[	        X5      n[         R
                  " US:H  5      (       d   eg )Nr   )@   r5   r5   r   r/   r1   s      r!   test_no_motion_3dr6   ;   sI    
))


"C
**,*
'CC%D66$!)r-   c                  ,   [         R                  R                  S5      n U R                  SS9n[	        U5      u  p#[        XSS9nUR                  S:X  d   e[        XSS9nUR                  S:X  d   e[        XE-
  5      R                  5       S:  d   eg )Nr   r   r   float64r   float32gMbP?)	r   r   r   r   r   r   r   r   r   )r   r   r   r   flow_f64flow_f32s         r!   test_optical_flow_dtyper=   D   s    
))


"CZZZZ(F#F+OGi@H>>Y&&&  i@H>>Y&&&
 x"#((*T111r-   c                      [         R                  R                  S5      n U R                  SS9nU R                  SS9n[        R
                  " [        5         [        X5      u  p4S S S 5        g ! , (       d  f       g = f)Nr   r   r   )   r   r   r   r   r   r   r   r   r   )r   I0I1uvs        r!   test_incompatible_shapesrE   Y   sZ    
))


"C		$B		$B	z	"' 
#	"	"s   A//
A=c                      [         R                  R                  S5      n U R                  SS9n[        R
                  " [        5         [        XSS9u  p#S S S 5        g ! , (       d  f       g = f)Nr   r   r   intr9   r@   )r   r2   rC   rD   s       r!   test_wrong_dtyperH   a   sL    
))


"C
****
%C	z	"6 
#	"	"s   	A
A-)numpyr   r   skimage._shared.utilsr   skimage.registrationr   	test_tvl1r   markparametrizefloat16r:   r8   r"   r,   r3   r6   r=   rE   rH    r-   r!   <module>rQ      s      7 1 $ 2::rzz2::"FGdE]3tUm4 5 4 H, dE]3tUm4, 5 4,2*(7r-   