+
     °³jò  ã                   ót   € ^ RI t ^ RIt^ RIHtHtHtHt ^ RIt^ RIH	t	 ^RI
HtHt ^RIHt  ! R R]4      tR# )é    N)ÚAnyÚCallableÚOptionalÚUnion)ÚImage)Úcheck_integrityÚverify_str_arg)ÚVisionDatasetc                   ó�   a a€ ] tR t^t oRtRRRRRRRR/tRV3R lV 3R llltV3R lR	 ltV3R
 lR ltV3R lR lt	Rt
VtV ;t# )ÚFER2013a  `FER2013
<https://www.kaggle.com/c/challenges-in-representation-learning-facial-expression-recognition-challenge>`_ Dataset.

.. note::
    This dataset can return test labels only if ``fer2013.csv`` OR
    ``icml_face_data.csv`` are present in ``root/fer2013/``. If only
    ``train.csv`` and ``test.csv`` are present, the test labels are set to
    ``None``.

Args:
    root (str or ``pathlib.Path``): Root directory of dataset where directory
        ``root/fer2013`` exists. This directory may contain either
        ``fer2013.csv``, ``icml_face_data.csv``, or both ``train.csv`` and
        ``test.csv``. Precendence is given in that order, i.e. if
        ``fer2013.csv`` is present then the rest of the files will be
        ignored. All these (combinations of) files contain the same data and
        are supported for convenience, but only ``fer2013.csv`` and
        ``icml_face_data.csv`` are able to return non-None test labels.
    split (string, optional): The dataset split, supports ``"train"`` (default), or ``"test"``.
    transform (callable, optional): A function/transform that takes in a PIL image and returns a transformed
        version. E.g, ``transforms.RandomCrop``
    target_transform (callable, optional): A function/transform that takes in the target and transforms it.
ÚtrainÚtestÚferÚicmlc          
      ó€   <€ V ^8„  d   QhRS[ S[S[P                  3,          RS[RS[S[,          RS[S[,          RR/# )é   ÚrootÚsplitÚ	transformÚtarget_transformÚreturnN)r   ÚstrÚpathlibÚPathr   r   )ÚformatÚ__classdict__s   "€Ú]/home/luca/screen-checking/.venv/lib/python3.14/site-packages/torchvision/datasets/fer2013.pyÚ__annotate__ÚFER2013.__annotate__=   s\   ø€ ÷ )Mñ )Má‘C™Ÿ™Ð%Õ&ð)Mñ ð)Mñ ™HÕ%ð	)Mñ
 #¡8Õ,ð)Mð 
ñ)Mó    c           	     óò  <a aaaaa€ \        VR R4      S n        \        SS `  WVR7       \        P
                  ! S P                  4      R,          pVS P                  R,          ^ ,          ,          P                  4       oS'       * ;'       d0    VS P                  R,          ^ ,          ,          P                  4       oS P                  S'       d   RMS'       d   RMS P                  ,          w  rgWV,          p\        \        V4      VR7      '       g   \        V RV R24      hS'       d   R	MR
oS'       d   RMRoV3R lp	V VV3R lp
\        VRR7      ;_uu_ 4       pR \        P                  ! V4       4       pS'       g	   S'       d#   S P                  R8X  d   RMRoVV3R lV 4       pV Uu. uF  qÙ! V4      V
! V4      3NK  	  upS n        RRR4       R# u upi   + '       g   i     R# ; i)r   r   )r   r   Úfer2013r   r   )Úmd5z not found in zŽ or corrupted. You can download it from https://www.kaggle.com/c/challenges-in-representation-learning-facial-expression-recognition-challengez pixelsÚpixelsz UsageÚUsagec                 óÖ   <€ \         P                  ! V S,          P                  4        Uu. uF  p\        V4      NK  	  up\         P                  R 7      P                  ^0^04      # u upi ))Údtype)ÚtorchÚtensorr   ÚintÚuint8Úreshape)ÚrowÚidxÚ
pixels_keys   & €r   Úget_imgÚ!FER2013.__init__.<locals>.get_imgV   sO   ø€ Ü—<’<°S¸µ_×5JÑ5JÔ5LÓ MÑ5L¨c¤ S¦Ñ5LÑ MÔUZ×U`ÑU`Ôa×iÑiÐjlÐnpÓqÐqùÒ Ms   «A&c                 ón   <€ S'       g   S'       g   SP                   R 8X  d   \        V R,          4      # R# )r   ÚemotionN)Ú_splitr*   )r-   ÚselfÚuse_fer_fileÚuse_icml_files   &€€€r   Ú	get_labelÚ#FER2013.__init__.<locals>.get_labelY   s%   ø€ ßŸ}°·±¸wÔ0FÜ˜3˜y�>Ó*Ð*ár    Ú )Únewlinec              3   ó$   "  € T F  qx € K  	  R # 5i©N© )Ú.0r-   s   & r   Ú	<genexpr>Ú#FER2013.__init__.<locals>.<genexpr>`   s   é € Ð8Ñ#7˜C”CÓ#7ùs   ‚c              3   óF   <"  € T F  qS,          S9   g   K  Vx € K  	  R # 5ir=   r>   )r?   r-   Ú	usage_keyÚ
valid_keyss   & €€r   r@   rA   d   s   øé € ÐL¡t °9­~ÀÑ/KŸš£tùs   ƒ!—
!N)r   r   )ÚTraining)Ú
PublicTestÚPrivateTest)r	   r4   ÚsuperÚ__init__r   r   r   Ú
_RESOURCESÚexistsr   r   ÚRuntimeErrorÚopenÚcsvÚ
DictReaderÚ_samples)r5   r   r   r   r   Úbase_folderÚ	file_namer#   Ú	data_filer0   r8   ÚfileÚrowsr-   r/   rC   r6   r7   rD   Ú	__class__s   f&&&&         @@@@@€r   rI   ÚFER2013.__init__=   sŒ  þ€ ô % U¨GÐ5FÓGˆŒÜ‰Ñ˜ÐEUÐÔVä—l’l 4§9¡9Ó-°	Õ9ˆØ# d§o¡o°eÕ&<¸QÕ&?Õ?×GÑGÓIˆØ(Ô(×`Ð`¨k¸D¿O¹OÈFÕ<SÐTUÕ<VÕ.V×-^Ñ-^Ó-`ˆØŸ™·,©ÏmÁFÐae×alÑalÕm‰ˆ	ØÕ+ˆ	Üœs 9›~°3×7Ó7ÜØ�+˜^¨K¨=ð 9yð zóð ÷ #0‘Y°Xˆ
ß -‘H°7ˆ	õ	r÷	ô �) R×(Õ(¨DÙ8¤3§>¢>°$Ô#7Ó8ˆDçŸ}Ø.2¯k©k¸WÔ.D™]ÐJg�
ÝL¡tÓL�áGKÓLÁtÀ˜g c›l©I°c«NÓ;ÁtÑLˆDŒM÷ )Ñ(ùò M÷ )×(Ð(ús$   Å"-G%Æ&G%Æ6G ÇG%Ç G%Ç%G6	c                ó    <€ V ^8„  d   QhRS[ /# ©r   r   )r*   )r   r   s   "€r   r   r   h   s   ø€ ÷ "ñ "™ñ "r    c                ó,   € \        V P                  4      # r=   )ÚlenrP   ©r5   s   &r   Ú__len__ÚFER2013.__len__h   s   € Ü�4—=‘=Ó!Ð!r    c                ó<   <€ V ^8„  d   QhRS[ RS[S[S[3,          /# )r   r.   r   )r*   Útupler   )r   r   s   "€r   r   r   k   s#   ø€ ÷ 
ñ 
™sð 
¡u©S±#¨X¥ñ 
r    c                óö   € V P                   V,          w  r#\        P                  ! VP                  4       4      pV P                  e   V P	                  V4      pV P
                  e   V P                  V4      pWC3# r=   )rP   r   Ú	fromarrayÚnumpyr   r   )r5   r.   Úimage_tensorÚtargetÚimages   &&   r   Ú__getitem__ÚFER2013.__getitem__k   sf   € Ø#Ÿ}™}¨SÕ1ÑˆÜ—’ × 2Ñ 2Ó 4Ó5ˆà�>‰>Ò%Ø—N‘N 5Ó)ˆEà× Ñ Ò,Ø×*Ñ*¨6Ó2ˆFàˆ}Ðr    c                ó    <€ V ^8„  d   QhRS[ /# rY   )r   )r   r   s   "€r   r   r   w   s   ø€ ÷ &ñ &™Cñ &r    c                ó    € R V P                    2# )zsplit=)r4   r\   s   &r   Ú
extra_reprÚFER2013.extra_reprw   s   € Ø˜Ÿ™�}Ð%Ð%r    )rP   r4   )z	train.csvÚ 3f0dfb3d3fd99c811a1299cb947e3131)ztest.csvÚ b02c2298636a634e8c2faabbf3ea9a23)zfer2013.csvÚ f8428a1edbd21e88f42c73edd2a14f95)zicml_face_data.csvÚ b114b9e04e6949e5fe8b6a98b3892b1d)r   NN)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__rJ   rI   r]   rg   rk   Ú__static_attributes__Ú__classdictcell__Ú__classcell__)rV   r   s   @@r   r   r      s]   ù‡ € ñð2 	ÐBØÐ@ð$ 	ÐBØÐJð+€J÷0)Mõ )M÷V"ð "÷
ð 
÷&÷ &ð &r    r   )rN   r   Útypingr   r   r   r   r(   ÚPILr   Úutilsr   r	   Úvisionr
   r   r>   r    r   Ú<module>r}      s+   ðÛ 
Û ß 1Ó 1ã Ý ç 2Ý !ôl&ˆmö l&r    