
    3jq                     ,    S SK Jr  S SKr " S S5      rg)    )UnionNc                      \ rS rSr% Sr\\\\R                  4   \
S'   \\\R                  4   \
S'   \\\R                  4   \
S'   \\
S'   SS	 jrSS
 jrSS\\\\R                  4   S\SS4S jjr\S\4S j5       rSrg)AverageMeter   a  Computes and stores the average and current value.

Example:
    >>> stats = AverageMeter()
    >>> acc1 = torch.tensor(0.99) # coming from K.metrics.accuracy
    >>> stats.update(acc1, n=1)  # where n is batch size usually
    >>> round(stats.avg, 2)
    0.99

val_avgsumcountreturnNc                 $    U R                  5         g N)resetselfs    V/home/wildlama/miniconda3/lib/python3.13/site-packages/kornia/metrics/average_meter.py__init__AverageMeter.__init__(   s    

    c                 <    SU l         SU l        SU l        SU l        g )Nr   )r   r   r	   r
   r   s    r   r   AverageMeter.reset+   s    	
r   nc                     Xl         U =R                  X-  -  sl        U =R                  U-  sl        U R                  U R                  -  U l        g r   )r   r	   r
   r   )r   r   r   s      r   updateAverageMeter.update1   s8    CG

a
HHtzz)	r   c                     [        U R                  [        R                  5      (       a#  [	        U R                  R                  5       5      $ U R                  $ r   )
isinstancer   torchTensorfloatitemr   s    r   avgAverageMeter.avg7   s7    dii..)**yyr   )r   r
   r	   r   )r   N)   )__name__
__module____qualname____firstlineno____doc__r   r   boolr   r   __annotations__intr   r   r   propertyr!   __static_attributes__ r   r   r   r      s    	 
udELL(	))
u||#
$$	uell"	##J*%tU\\ 9: *s *4 * U  r   r   )typingr   r   r   r.   r   r   <module>r0      s   $  $ $r   