§
    íNg"6  ã                   óJ   — d dl Zd dlZd dlmZ d dlmZ  G d„ de¦  «        ZdS )é    N)ÚBase)Úexpectc                   óæ   — e Zd Zedd„¦   «         Zedd„¦   «         Zedd„¦   «         Zedd„¦   «         Zedd„¦   «         Zedd„¦   «         Z	edd	„¦   «         Z
edd
„¦   «         Zedd„¦   «         ZdS )ÚNonMaxSuppressionÚreturnNc            	      ó  — t           j                             dg d¢dg¬¦  «        } t          j        g d¢g d¢g d¢g d¢g d	¢g d
¢gg¦  «                             t          j        ¦  «        }t          j        g d¢gg¦  «                             t          j        ¦  «        }t          j        dg¦  «                             t          j        ¦  «        }t          j        dg¦  «                             t          j        ¦  «        }t          j        dg¦  «                             t          j        ¦  «        }t          j        g d¢g d¢g d¢g¦  «                             t          j        ¦  «        }t          | |||||g|gd¬¦  «         d S )Nr   ©ÚboxesÚscoresÚmax_output_boxes_per_classÚiou_thresholdÚscore_thresholdÚselected_indices©ÚinputsÚoutputs©ç        r   ç      ð?r   ©r   gš™™™™™¹?r   gš™™™™™ñ?©r   çš™™™™™¹¿r   çÍÌÌÌÌÌì?©r   g      $@r   g      &@©r   ç333333$@r   ç333333&@©r   ç      Y@r   ç     @Y@©r   g      è?ç333333ã?gffffffî?ç      à?g333333Ó?é   r#   r   ©r   r   r$   ©r   r   r   ©r   r   é   Ú&test_nonmaxsuppression_suppress_by_IOU©r   r   Úname©	ÚonnxÚhelperÚ	make_nodeÚnpÚarrayÚastypeÚfloat32Úint64r   ©Únoder
   r   r   r   r   r   s          úi/var/www/html/ai-engine/env/lib/python3.11/site-packages/onnx/backend/test/case/node/nonmaxsuppression.pyÚ(export_nonmaxsuppression_suppress_by_IOUz:NonMaxSuppression.export_nonmaxsuppression_suppress_by_IOU   s£  € åŒ{×$Ò$Øðð ð ð (Ð(ð %ñ 

ô 

ˆõ ”ð )Ð(Ð(Ø(Ð(Ð(Ø)Ð)Ð)Ø*Ð*Ð*Ø*Ð*Ð*Ø,Ð,Ð,ðð	ñ
ô 
÷ Š&•”Ñ
Ô
ð 	õ ”Ð<Ð<Ð<Ð=Ð>Ñ?Ô?×FÒFÅrÄzÑRÔRˆÝ%'¤X¨q¨c¡]¤]×%9Ò%9½"¼(Ñ%CÔ%CÐ"Ýœ # ™œ×.Ò.­r¬zÑ:Ô:ˆÝœ( C 5™/œ/×0Ò0µ´Ñ<Ô<ˆÝœ8 Y Y Y°	°	°	¸9¸9¸9Ð$EÑFÔF×MÒMÍbÌhÑWÔWÐåØàØØ*ØØðð &Ð&Ø9ð	
ñ 	
ô 	
ð 	
ð 	
ð 	
ó    c            	      ó  — t           j                             dg d¢dg¬¦  «        } t          j        g d¢g d¢g d¢g d¢g d	¢g d
¢gg¦  «                             t          j        ¦  «        }t          j        g d¢gg¦  «                             t          j        ¦  «        }t          j        dg¦  «                             t          j        ¦  «        }t          j        dg¦  «                             t          j        ¦  «        }t          j        dg¦  «                             t          j        ¦  «        }t          j        g d¢g d¢g¦  «                             t          j        ¦  «        }t          | |||||g|gd¬¦  «         d S )Nr   r	   r   r   r   r   r   r   r   r   r!   r$   r#   çš™™™™™Ù?r%   r&   Ú1test_nonmaxsuppression_suppress_by_IOU_and_scoresr*   r,   r5   s          r7   Ú3export_nonmaxsuppression_suppress_by_IOU_and_scoreszENonMaxSuppression.export_nonmaxsuppression_suppress_by_IOU_and_scores9   s  € åŒ{×$Ò$Øðð ð ð (Ð(ð %ñ 

ô 

ˆõ ”ð )Ð(Ð(Ø(Ð(Ð(Ø)Ð)Ð)Ø*Ð*Ð*Ø*Ð*Ð*Ø,Ð,Ð,ðð	ñ
ô 
÷ Š&•”Ñ
Ô
ð 	õ ”Ð<Ð<Ð<Ð=Ð>Ñ?Ô?×FÒFÅrÄzÑRÔRˆÝ%'¤X¨q¨c¡]¤]×%9Ò%9½"¼(Ñ%CÔ%CÐ"Ýœ # ™œ×.Ò.­r¬zÑ:Ô:ˆÝœ( C 5™/œ/×0Ò0µ´Ñ<Ô<ˆÝœ8 Y Y Y°	°	°	Ð$:Ñ;Ô;×BÒBÅ2Ä8ÑLÔLÐåØàØØ*ØØðð &Ð&ØDð	
ñ 	
ô 	
ð 	
ð 	
ð 	
r9   c            	      ó  — t           j                             dg d¢dg¬¦  «        } t          j        g d¢g d¢g d¢g d¢g d	¢g d
¢gg¦  «                             t          j        ¦  «        }t          j        g d¢gg¦  «                             t          j        ¦  «        }t          j        dg¦  «                             t          j        ¦  «        }t          j        dg¦  «                             t          j        ¦  «        }t          j        dg¦  «                             t          j        ¦  «        }t          j        g d¢g d¢g d¢g¦  «                             t          j        ¦  «        }t          | |||||g|gd¬¦  «         d S )Nr   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'   Ú*test_nonmaxsuppression_flipped_coordinatesr*   r,   r5   s          r7   Ú,export_nonmaxsuppression_flipped_coordinatesz>NonMaxSuppression.export_nonmaxsuppression_flipped_coordinatese   s£  € åŒ{×$Ò$Øðð ð ð (Ð(ð %ñ 

ô 

ˆõ ”ð )Ð(Ð(Ø(Ð(Ð(Ø)Ð)Ð)Ø*Ð*Ð*Ø*Ð*Ð*Ø,Ð,Ð,ðð	ñ
ô 
÷ Š&•”Ñ
Ô
ð 	õ ”Ð<Ð<Ð<Ð=Ð>Ñ?Ô?×FÒFÅrÄzÑRÔRˆÝ%'¤X¨q¨c¡]¤]×%9Ò%9½"¼(Ñ%CÔ%CÐ"Ýœ # ™œ×.Ò.­r¬zÑ:Ô:ˆÝœ( C 5™/œ/×0Ò0µ´Ñ<Ô<ˆÝœ8 Y Y Y°	°	°	¸9¸9¸9Ð$EÑFÔF×MÒMÍbÌhÑWÔWÐåØàØØ*ØØðð &Ð&Ø=ð	
ñ 	
ô 	
ð 	
ð 	
ð 	
r9   c            	      ó  — t           j                             dg d¢dg¬¦  «        } t          j        g d¢g d¢g d¢g d¢g d	¢g d
¢gg¦  «                             t          j        ¦  «        }t          j        g d¢gg¦  «                             t          j        ¦  «        }t          j        dg¦  «                             t          j        ¦  «        }t          j        dg¦  «                             t          j        ¦  «        }t          j        dg¦  «                             t          j        ¦  «        }t          j        g d¢g d¢g¦  «                             t          j        ¦  «        }t          | |||||g|gd¬¦  «         d S )Nr   r	   r   r   r   r   r   r   r   r   r!   é   r#   r   r%   r&   Ú(test_nonmaxsuppression_limit_output_sizer*   r,   r5   s          r7   Ú*export_nonmaxsuppression_limit_output_sizez<NonMaxSuppression.export_nonmaxsuppression_limit_output_size‘   s  € åŒ{×$Ò$Øðð ð ð (Ð(ð %ñ 

ô 

ˆõ ”ð )Ð(Ð(Ø(Ð(Ð(Ø)Ð)Ð)Ø*Ð*Ð*Ø*Ð*Ð*Ø,Ð,Ð,ðð	ñ
ô 
÷ Š&•”Ñ
Ô
ð 	õ ”Ð<Ð<Ð<Ð=Ð>Ñ?Ô?×FÒFÅrÄzÑRÔRˆÝ%'¤X¨q¨c¡]¤]×%9Ò%9½"¼(Ñ%CÔ%CÐ"Ýœ # ™œ×.Ò.­r¬zÑ:Ô:ˆÝœ( C 5™/œ/×0Ò0µ´Ñ<Ô<ˆÝœ8 Y Y Y°	°	°	Ð$:Ñ;Ô;×BÒBÅ2Ä8ÑLÔLÐåØàØØ*ØØðð &Ð&Ø;ð	
ñ 	
ô 	
ð 	
ð 	
ð 	
r9   c                  óè  — t           j                             dg d¢dg¬¦  «        } t          j        g d¢gg¦  «                             t          j        ¦  «        }t          j        dggg¦  «                             t          j        ¦  «        }t          j        dg¦  «                             t          j        ¦  «        }t          j        dg¦  «                             t          j        ¦  «        }t          j        d	g¦  «                             t          j        ¦  «        }t          j        g d
¢g¦  «                             t          j        ¦  «        }t          | |||||g|gd¬¦  «         d S )Nr   r	   r   r   r   r   r$   r#   r   r&   Ú!test_nonmaxsuppression_single_boxr*   r,   r5   s          r7   Ú#export_nonmaxsuppression_single_boxz5NonMaxSuppression.export_nonmaxsuppression_single_box½   sR  € åŒ{×$Ò$Øðð ð ð (Ð(ð %ñ 

ô 

ˆõ ”Ð/Ð/Ð/Ð0Ð1Ñ2Ô2×9Ò9½"¼*ÑEÔEˆÝ”˜S˜E˜7˜)Ñ$Ô$×+Ò+­B¬JÑ7Ô7ˆÝ%'¤X¨q¨c¡]¤]×%9Ò%9½"¼(Ñ%CÔ%CÐ"Ýœ # ™œ×.Ò.­r¬zÑ:Ô:ˆÝœ( C 5™/œ/×0Ò0µ´Ñ<Ô<ˆÝœ8 Y Y Y KÑ0Ô0×7Ò7½¼ÑAÔAÐåØàØØ*ØØðð &Ð&Ø4ð	
ñ 	
ô 	
ð 	
ð 	
ð 	
r9   c                  ó   — t           j                             dg d¢dg¬¦  «        } t          j        g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g
g¦  «                             t          j        ¦  «        }t          j        g d¢gg¦  «                             t          j        ¦  «        }t          j        dg¦  «                             t          j        ¦  «        }t          j        dg¦  «                             t          j        ¦  «        }t          j        d	g¦  «                             t          j        ¦  «        }t          j        g d
¢g¦  «                             t          j        ¦  «        }t          | |||||g|gd¬¦  «         d S )Nr   r	   r   r   r   )
r   r   r   r   r   r   r   r   r   r   r$   r#   r   r&   Ú&test_nonmaxsuppression_identical_boxesr*   r,   r5   s          r7   Ú(export_nonmaxsuppression_identical_boxesz:NonMaxSuppression.export_nonmaxsuppression_identical_boxesÞ   sÂ  € åŒ{×$Ò$Øðð ð ð (Ð(ð %ñ 

ô 

ˆõ ”ð )Ð(Ð(Ø(Ð(Ð(Ø(Ð(Ð(Ø(Ð(Ð(Ø(Ð(Ð(Ø(Ð(Ð(Ø(Ð(Ð(Ø(Ð(Ð(Ø(Ð(Ð(Ø(Ð(Ð(ððñ
ô 
÷ Š&•”Ñ
Ô
ð 	õ  ”Ø@Ð@Ð@ÐAÐBñ
ô 
ç
Š&•”Ñ
Ô
ð 	õ &(¤X¨q¨c¡]¤]×%9Ò%9½"¼(Ñ%CÔ%CÐ"Ýœ # ™œ×.Ò.­r¬zÑ:Ô:ˆÝœ( C 5™/œ/×0Ò0µ´Ñ<Ô<ˆÝœ8 Y Y Y KÑ0Ô0×7Ò7½¼ÑAÔAÐåØàØØ*ØØðð &Ð&Ø9ð	
ñ 	
ô 	
ð 	
ð 	
ð 	
r9   c            	      ó  — t           j                             dg d¢dgd¬¦  «        } t          j        g d¢g d¢g d¢g d	¢g d
¢g d¢gg¦  «                             t          j        ¦  «        }t          j        g d¢gg¦  «                             t          j        ¦  «        }t          j        dg¦  «                             t          j        ¦  «        }t          j        dg¦  «                             t          j        ¦  «        }t          j        dg¦  «                             t          j        ¦  «        }t          j        g d¢g d¢g d¢g¦  «                             t          j        ¦  «        }t          | |||||g|gd¬¦  «         d S )Nr   r	   r   é   )r   r   Úcenter_point_box)r#   r#   r   r   )r#   r"   r   r   )r#   r;   r   r   )r#   g      %@r   r   )r#   g333333%@r   r   )r#   g      Y@r   r   r!   r$   r#   r   r%   r&   r'   Ú.test_nonmaxsuppression_center_point_box_formatr*   r,   r5   s          r7   Ú0export_nonmaxsuppression_center_point_box_formatzBNonMaxSuppression.export_nonmaxsuppression_center_point_box_format  s¦  € åŒ{×$Ò$Øðð ð ð (Ð(Øð %ñ 
ô 
ˆõ ”ð )Ð(Ð(Ø(Ð(Ð(Ø(Ð(Ð(Ø)Ð)Ð)Ø)Ð)Ð)Ø*Ð*Ð*ðð	ñ
ô 
÷ Š&•”Ñ
Ô
ð 	õ ”Ð<Ð<Ð<Ð=Ð>Ñ?Ô?×FÒFÅrÄzÑRÔRˆÝ%'¤X¨q¨c¡]¤]×%9Ò%9½"¼(Ñ%CÔ%CÐ"Ýœ # ™œ×.Ò.­r¬zÑ:Ô:ˆÝœ( C 5™/œ/×0Ò0µ´Ñ<Ô<ˆÝœ8 Y Y Y°	°	°	¸9¸9¸9Ð$EÑFÔF×MÒMÍbÌhÑWÔWÐåØàØØ*ØØðð &Ð&ØAð	
ñ 	
ô 	
ð 	
ð 	
ð 	
r9   c            	      ó   — t           j                             dg d¢dg¬¦  «        } t          j        g d¢g d¢g d¢g d¢g d	¢g d
¢gg¦  «                             t          j        ¦  «        }t          j        g d¢g d¢gg¦  «                             t          j        ¦  «        }t          j        dg¦  «                             t          j        ¦  «        }t          j        dg¦  «                             t          j        ¦  «        }t          j        dg¦  «                             t          j        ¦  «        }t          j        g d¢g d¢g d¢g d¢g¦  «                             t          j        ¦  «        }t          | |||||g|gd¬¦  «         d S )Nr   r	   r   r   r   r   r   r   r   r   r!   rB   r#   r   r%   r&   )r   rL   r$   )r   rL   r   Ú"test_nonmaxsuppression_two_classesr*   r,   r5   s          r7   Ú$export_nonmaxsuppression_two_classesz6NonMaxSuppression.export_nonmaxsuppression_two_classes=  sÂ  € åŒ{×$Ò$Øðð ð ð (Ð(ð %ñ 

ô 

ˆõ ”ð )Ð(Ð(Ø(Ð(Ð(Ø)Ð)Ð)Ø*Ð*Ð*Ø*Ð*Ð*Ø,Ð,Ð,ðð	ñ
ô 
÷ Š&•”Ñ
Ô
ð 	õ ”Ø.Ð.Ð.Ð0PÐ0PÐ0PÐQÐRñ
ô 
ç
Š&•”Ñ
Ô
ð 	õ &(¤X¨q¨c¡]¤]×%9Ò%9½"¼(Ñ%CÔ%CÐ"Ýœ # ™œ×.Ò.­r¬zÑ:Ô:ˆÝœ( C 5™/œ/×0Ò0µ´Ñ<Ô<ˆÝœ8ØˆYˆY˜	˜	˜	 9 9 9¨i¨i¨iÐ8ñ
ô 
ç
Š&•”Ñ
Ô
ð 	õ 	ØàØØ*ØØðð &Ð&Ø5ð	
ñ 	
ô 	
ð 	
ð 	
ð 	
r9   c            
      óH  — t           j                             dg d¢dg¬¦  «        } t          j        g d¢g d¢g d¢g d¢g d	¢g d
¢gg d¢g d¢g d¢g d¢g d	¢g d
¢gg¦  «                             t          j        ¦  «        }t          j        g d¢gg d¢gg¦  «                             t          j        ¦  «        }t          j        dg¦  «                             t          j        ¦  «        }t          j        dg¦  «                             t          j        ¦  «        }t          j        dg¦  «                             t          j        ¦  «        }t          j        g d¢g d¢g d¢g d¢g¦  «                             t          j        ¦  «        }t          | |||||g|gd¬¦  «         d S )Nr   r	   r   r   r   r   r   r   r   r   r!   rB   r#   r   r%   r&   )rL   r   r$   )rL   r   r   Ú"test_nonmaxsuppression_two_batchesr*   r,   r5   s          r7   Ú$export_nonmaxsuppression_two_batchesz6NonMaxSuppression.export_nonmaxsuppression_two_batchesm  s  € åŒ{×$Ò$Øðð ð ð (Ð(ð %ñ 

ô 

ˆõ ”ð )Ð(Ð(Ø(Ð(Ð(Ø)Ð)Ð)Ø*Ð*Ð*Ø*Ð*Ð*Ø,Ð,Ð,ðð )Ð(Ð(Ø(Ð(Ð(Ø)Ð)Ð)Ø*Ð*Ð*Ø*Ð*Ð*Ø,Ð,Ð,ððñ
ô 
÷& Š&•”Ñ
Ô
ð' 	õ( ”Ø.Ð.Ð.Ð/Ð2RÐ2RÐ2RÐ1SÐTñ
ô 
ç
Š&•”Ñ
Ô
ð 	õ &(¤X¨q¨c¡]¤]×%9Ò%9½"¼(Ñ%CÔ%CÐ"Ýœ # ™œ×.Ò.­r¬zÑ:Ô:ˆÝœ( C 5™/œ/×0Ò0µ´Ñ<Ô<ˆÝœ8ØˆYˆY˜	˜	˜	 9 9 9¨i¨i¨iÐ8ñ
ô 
ç
Š&•”Ñ
Ô
ð 	õ 	ØàØØ*ØØðð &Ð&Ø5ð	
ñ 	
ô 	
ð 	
ð 	
ð 	
r9   )r   N)Ú__name__Ú
__module__Ú__qualname__Ústaticmethodr8   r=   r@   rD   rG   rJ   rO   rR   rU   © r9   r7   r   r      s:  € € € € € Øð)
ð )
ð )
ñ „\ð)
ðV ð)
ð )
ð )
ñ „\ð)
ðV ð)
ð )
ð )
ñ „\ð)
ðV ð)
ð )
ð )
ñ „\ð)
ðV ð
ð 
ð 
ñ „\ð
ð@ ð/
ð /
ð /
ñ „\ð/
ðb ð*
ð *
ð *
ñ „\ð*
ðX ð-
ð -
ð -
ñ „\ð-
ð^ ð5
ð 5
ð 5
ñ „\ð5
ð 5
ð 5
r9   r   )Únumpyr0   r-   Úonnx.backend.test.case.baser   Úonnx.backend.test.case.noder   r   rZ   r9   r7   ú<module>r^      s~   ðð
 Ð Ð Ð à €€€Ø ,Ð ,Ð ,Ð ,Ð ,Ð ,Ø .Ð .Ð .Ð .Ð .Ð .ðW
ð W
ð W
ð W
ð W
˜ñ W
ô W
ð W
ð W
ð W
r9   