
    Ng%:                     P    d dl Zd dlZd dlmZ d dlmZ d Z G d de          ZdS )    N)Base)expectc                  "   t          j        g dg dg dg dg dg dg dg dg d	g d
g
ggt           j                  } t          j        g dt           j                  }t          j        g dg dg dgt           j                  }| ||fS )N
gTR'?gzG?g9EGr?g??g1?gݓ?g؁sF?gq?g?g333333?
gfa?gx?glV}?g@߾?ggj+?g=U?gZd;?g(~k	?g??gǘ?
gL7A`?gH.!?gF%u?gk	?guq?g*	?gQI?gy):?g(\?gꕲq?
g0*?gjt?g/$?g1w-!?gm4?g\ Ac?gm4?g0*?glxz,C?giq?
gH.?g_L?g-?gH.?g>W[?gU?g rh?gMbX9?g_vO?gMO?
g?g	h"l?g?g37?gmV}b?geX?g_L?gjt?gۊe?g@?
gR'?6[ ?g??g?߾?gC?gBi?gΪV?gl?O@a?gS:?
gQ|?t$~?g8gDio?gq?g?gZd;?g'1Z?gq?g1w-!?gi o?
g~:?46<?g(y?a+e?gX ?gx#?gQ?gгYں?g#?g?
g ~:p?g|гY?gz6?gQI&?gsh|??gV/?g:M?g_Q?gYڊ?gݵ|г?dtyper   r   r   )r   r   	   r   )r         r   )r   r   r   r   )nparrayfloat32int64)Xbatch_indicesroiss      `/var/www/html/ai-engine/env/lib/python3.11/site-packages/onnx/backend/test/case/node/roialign.pyget_roi_align_input_valuesr#      s    
                    [y{}	
| j@	 @	 @	AB HYYYbh777M8\\\<<<>bjQQQDmT!!    c                   V    e Zd Zedd            Zedd            Zedd            ZdS )RoiAlignreturnNc            
      R   t           j                            dg ddgddddd          } t                      \  }}}t	          j        g d	g d
g dg dg dggg dg dg dg dg dggg dg dg dg dg dgggt          j                  }t          | |||g|gd           d S )Nr&   r   r!   r    Y      ?r      output_half_pixelinputsoutputsspatial_scaleoutput_heightoutput_widthsampling_ratiocoordinate_transformation_mode)g}b?g0*?gn?g߾3?gBfj?)gi o?gt$~?g%C?g\ Ac?gX9v?)geX?gUN@?g?ܵ?gTR'?gW2ı?)gy)?gqh ?g?grh|?g2U0*?)gI.!?g?gr?gFx?g|?5^?)gz6>W?gZd;O?g(?gR!u?gݓZ?)gڊe?g(\?gI+?g:M?g r?)g&S?g|a2U0?gw#?gʡE?giq?)g	c?gu?gǺ?g'W?gL
F%u?)g(?gTR'?g?ܵ?g6>W[?gMbX?)g2%?`TR'?g?gQ?g46<R?)gQ?gMbX9?g;pΈ?gk+ݓ?g6[ ?)gOe?gT?g0*D?gQ|a?gMb?)gA`"?g	h"l?gk	g?gۊe?g
ףp=
?)gV-?gw-!l?gz?g2ı.n?gJ4?r   test_roialign_aligned_falser/   r0   nameonnxhelper	make_noder#   r   r   r   r   noder   r    r!   r*   s        r"   export_roialign_aligned_falsez&RoiAlign.export_roialign_aligned_false   s[   {$$111E+> % 	
 	
 "<!=!==$H A@@@@@@@@@@@@@@ A@@@@@@@@@@@@@@ A@@@@@@@@@@@@@@': *=
 
 
B 	t]+C.		
 	
 	
 	
 	
 	
r$   c            
      R   t           j                            dg ddgddddd          } t                      \  }}}t	          j        g d	g d
g dg dg dggg dg dg dg dg dggg dg dg dg dg dgggt          j                  }t          | |||g|gd           d S )Nr&   r)   r*   r+   r   r,   
half_pixelr.   )g6;Nё?gё\C?g7d?g3?g:M?)g\ Ac?g@a+?gͪV?gxz,C?g:H?)g2U0*?g"u?g"~?gm4@?gV-?)gq=
ףp?g58EGr?gX?g
F%u?g	g?)gǘ?gZB>?gAc]K?g߾3?g}b?)gS?g<Nё\?gz6>W[?gZd;?g^I+?)gq?gHPs?gz):?g<,?gSt$?)g&W?gH}?g!uq?gˡE?g4@?)g?gn?g48E?gffffff?g2U0*?)gz?gz?gJ4?g9#J{?g1w-!?)gea?gGz?r6   g)\(?g	cZ?)r   gDJ?gʡE?gCiq?g?)gy?gN@?g o_?gı.n?g(\?)gJ4?g8EGr?g%䃞?g3?gd`TR?)g46<?gܵ|?gp_Q?g=U?gGr?r   test_roialign_aligned_truer8   r:   r>   s        r"   export_roialign_aligned_truez%RoiAlign.export_roialign_aligned_true   s[   {$$111E+7 % 	
 	
 "<!=!==$H A@@@@@@@@@@@@@@ A@@@@@@@@@@@@@@ A@@@@@@@@@@@@@@': *=
 
 
B 	t]+C-		
 	
 	
 	
 	
 	
r$   c                  F   t          j        g dg dg dg dg dg dg dg dg d	g d
g
ggt           j                  } t          j        g dg dg dgt           j                  }t          j        g dt           j                  }t          j        g dg dg dg dg dggg dg dg dg dg dggg dg dg dg dg dgggt           j                  }t          j                            dg d d!d"gd#d$d$d%d&'	  	        }t          || ||g|gd()           d S )*Nr   r   r   r	   r
   r   r   r   r   r   r   )        rF         "@rG   )rF         @g      @rG   )rH   rH   rG   rG   r   )g|[?g!?g"s<;?gAѪ?gq
yP?)gؔYt?gat?gS<I?g ?gI%Y?)gx*?g 1?g@q?gǸ\?gT%_CO?)gh#?gHo?gFl?gm ?g0T(?)g?gz:?g_㟾J?g7K{?g55?)g?g=F?g(mj?g*?g6{?)gBsF?r   gğv2?gֵ?g#g?)g^B?gu~?g-u?gֵ?gA&5?)gþSW?r   gU,.?r   g
g?)gV<?֝?g._TW?gGI"?g$T=?gP<?)g_vV?giEpw?g<?g-7?g?)gd?gI%=?gi2?r   g?)ghL?gP?g.$w?g٨M?g*;"U?)g1R0?gP?g.$w?geM?g*;"U?)g/Ud?g*D?gV?g}^?gfPLb9?r&   r)   maxr*   r+   r   r,   r-   )r/   moder0   r1   r2   r3   r4   r5   test_roialign_mode_maxr8   )r   r   r   r   r;   r<   r=   r   )r   r!   r    r*   r?   s        r"   export_roialign_mode_maxz!RoiAlign.export_roialign_mode_max  so   H                    [y{}| *@
 @
 @
B x!!!#7#7#79M9M9MN*
 
 
 "(;;;H RQQQQQQQQQQQQQQ RQQMMMSSSKKKQQQ SRRNNNQQQSSSRRR': *=
 
 
B {$$111E+> % 

 

 	t]+C)		
 	
 	
 	
 	
 	
r$   )r'   N)__name__
__module____qualname__staticmethodr@   rD   rL    r$   r"   r&   r&      sz        4
 4
 4
 \4
l 4
 4
 4
 \4
l z
 z
 z
 \z
 z
 z
r$   r&   )	numpyr   r;   onnx.backend.test.case.baser   onnx.backend.test.case.noder   r#   r&   rQ   r$   r"   <module>rU      s   
      , , , , , , . . . . . .D" D" D"Nj
 j
 j
 j
 j
t j
 j
 j
 j
 j
r$   