
    hh@                     J    d dl Zd dlZd dlmZmZmZmZ d Zd Z	d Z
d Zd Zy)    N)intersection_coeffmanders_coloc_coeffmanders_overlap_coeffpearson_corr_coeffc                  	   t        j                  t        d      D  cg c]  } t        d      D cg c]  }| |z   	 c}  c}}       }t        j                  d      }t        j                  t        d      D  cg c]  }t        d      D  cg c]  } | dk  	 c}   c} }      }t        j                  t        d      D cg c]  }t        d      D cg c]  }d c} c}}      }t	        j
                  t        d      5  t        |||       d d d        t	        j
                  t        d      5  t        ||       d d d        t	        j
                  t        d      5  t        |||       d d d        t	        j
                  t        d      5  t        |||       d d d        t	        j
                  t        d      5  t        ||       d d d        t	        j
                  t        d      5  t        ||       d d d        t	        j
                  t        d      5  t        ||d	kD  |       d d d        t	        j
                  t        d      5  t        ||d	kD  |       d d d        t	        j
                  t        d      5  t        |||       d d d        t	        j
                  t        d      5  t        ||       d d d        t	        j
                  t        d      5  t        |||       d d d        t	        j
                  t        d      5  t        |||       d d d        t	        j
                  t        d      5  t        |dkD  |dkD  |       d d d        t	        j
                  t        d      5  t        ||       d d d        t	        j
                  t        d      5  t        |dkD  |dkD  |       d d d        t	        j
                  t        d      5  t        |dkD  |dkD  |       d d d        y c c}w c c}} w c c} w c c} }w c c}w c c}}w # 1 sw Y   xY w# 1 sw Y   xY w# 1 sw Y   xY w# 1 sw Y   xY w# 1 sw Y   xY w# 1 sw Y   mxY w# 1 sw Y   FxY w# 1 sw Y   xY w# 1 sw Y   xY w# 1 sw Y   xY w# 1 sw Y   xY w# 1 sw Y   xY w# 1 sw Y   fxY w# 1 sw Y   CxY w# 1 sw Y   xY w# 1 sw Y   y xY w)
N   )         r
         z. must have the same dimensions)matchz. array is not of dtype booleanr   )nparrayrangeonespytestraises
ValueErrorr   r   r   r   )ijimg1img2_mask__non_binary_masks           g/var/www/html/dev/engine/venv/lib/python3.12/site-packages/skimage/measure/tests/test_colocalization.pytest_invalid_inputr      s   88aA1U1X.a!e.ABD779D88qBAeAh/a1f/BCDhhaI1U1X 6r 6IJO	z)J	K -4t,-	z)J	K '4&'	z)J	K -4t,-	z)J	K 8478	z)J	K (D$'(	z)J	K 3D/23	z)J	K 2D$(D12	z)J	K =D$(O<=	z)J	K 0dD$/0	z)J	K *dD)*	z)J	K 0dD$/0	z)J	K ;dD/:;	z)J	K 54!8TAXt45	z)J	K '4&'	z)J	K 54!8TAXt45	z)J	K @4!8TAX?@ @G /A/B 6I- -' '- -8 8( (3 32 2= =0 0* *0 0; ;5 5' '5 5@ @s  P
PP
;P
PP
P*
	P%P*
P07P='Q
Q	Q$9Q1)Q>RRR%2R2#R?SS;S&2S3P
P
%P*
0P:=Q
QQ!$Q.1Q;>RRR"%R/2R<?S	SS#&S03S<c                  *   t        j                  t        d      D  cg c]  } t        d      D cg c]  }| |z   	 c}  c}}       }t         j                  j	                  t        ||      dd       t        j                  |dk  d|      }t         j                  j	                  t        ||      d       t        j                  |dk  dd      }t         j                  j	                  t        |||      t        |||             y c c}w c c}} w )	Nr   )g      ?g           )decimalr   r   )gQ`<?g&c>r   )r   r   r   testingassert_almost_equalr   where)r   r   r   r   rois        r   test_pccr'   4   s    88aA1U1X.a!e.ABDJJ""4&
B #  88DAIq$'DJJ""4&(S
 ((419a
#CJJ""4s+-?dC-P /As   D
D
D

D
c                     t        j                  t        d      D  cg c]  } t        d      D cg c]  }| c} c}}       }t        j                  t        d      D  cg c]  } t        d      D cg c]  }| dk  	 c}  c}}       }t        ||      dk(  sJ t        j                  |dk(  d|      }|dz  }t        j                  t              5  t        ||       d d d        t        j                  t              5  t        ||       d d d        y c c}w c c}} w c c}w c c}} w # 1 sw Y   NxY w# 1 sw Y   y xY w)Nr   r         ?       @)r   r   r   r   r%   r   r   r   )r   r   r   r   img_negativeintimg_negativefloats         r   test_mccr.   G   s    88E!H=qq*Aa*=>D88qBAeAh/a1f/BCDtT*c111 hhtqy"d3O'#-	z	" 3OT23	z	" 5-t45 5 +=/B3 35 5sE   D 
	DD 
#D+
5D&D+
D1D=D 
&D+
1D:=Ec                     t        j                  d      } dt        j                  d      z  }t        | |      dk(  sJ t        j                  | dk(  d|       }|dz  }t	        j
                  t              5  t        ||       d d d        t	        j
                  t              5  t        | |       d d d        t	        j
                  t              5  t        ||       d d d        t	        j
                  t              5  t        | |       d d d        t	        j
                  t              5  t        ||       d d d        y # 1 sw Y   xY w# 1 sw Y   xY w# 1 sw Y   ~xY w# 1 sw Y   \xY w# 1 sw Y   y xY w)N)r   r   r   r   r*   r+   )r   r   r   r%   r   r   r   )r   r   r,   r-   s       r   test_mocr0   U   s>   776?DrwwvD t,111 hhtqy"d3O'#-	z	" 5ot45	z	" 5dO45	z	" 7/67	z	" 7d$567	z	" D/1BCD D5 55 57 77 7D Ds<   7E%EEE)/E5EEE&)E25E>c                  4   t        j                  t        d      D  cg c]  } t        d      D cg c]  }|dk  	 c}  c}}       }t        j                  t        d      D  cg c]  } t        d      D cg c]  }| dk  	 c}  c}}       }t        j                  t        d      D  cg c]  } t        d      D cg c]  }d c} c}}       }t        ||      dk(  sJ t        ||      dk(  sJ y c c}w c c}} w c c}w c c}} w c c}w c c}} w )Nr   r   r)   )r   r   r   r   )r   r   	img1_mask	img2_mask	img3_masks        r   test_intersection_coefficientr5   i   s    eAhG584a164GHIeAhG584a164GHIqBAeAh/1/BCIi3s:::i3q888	 5G4G/BsE   C>
C9C>
&D	
8DD	
.D
 	D	D
9C>
D	
D
)numpyr   r   skimage.measurer   r   r   r   r   r'   r.   r0   r5        r   <module>r:      s1      &@R&5D(9r9   