Ë
    †\;jƒ  ã                   ó  — d Z ddlZddlZddlZddlZddlmZ g ZdZ	e	dz   Z
dZe	dz   ZdZdd	„Z ed
ddd¬«      d„ «       Z ed
ddd¬«      d„ «       Z ed
ddd¬«      dd„«       Z ed
ddd¬«      dd„«       Z ed
ddd¬«      d„ «       Zy)a,  
CIFAR dataset.

This module will download dataset from https://dataset.bj.bcebos.com/cifar/cifar-10-python.tar.gz and https://dataset.bj.bcebos.com/cifar/cifar-100-python.tar.gz, parse train/test set into
paddle reader creators.

The CIFAR-10 dataset consists of 60000 32x32 color images in 10 classes,
with 6000 images per class. There are 50000 training images and 10000 test
images.

The CIFAR-100 dataset is just like the CIFAR-10, except it has 100 classes
containing 600 images each. There are 500 training images and 100 testing
images per class.

é    N)Ú
deprecatedz$https://dataset.bj.bcebos.com/cifar/zcifar-10-python.tar.gzÚ c58f30108f718f92721af3b95e74349azcifar-100-python.tar.gzÚ eb9058c3a382ffc7106e4002c42a8d85c                 ó$   ‡ ‡‡‡— d„ Šˆˆ ˆˆfd„}|S )Nc              3   óè   K  — | d   }| j                  d| j                  dd «      «      }|€J ‚t        ||«      D ]4  \  }}|dz  j                  t        j                  «      t        |«      f–— Œ6 y ­w)Ns   datas   labelss   fine_labelsg     ào@)ÚgetÚzipÚastypeÚnumpyÚfloat32Úint)ÚbatchÚdataÚlabelsÚsampleÚlabels        ú]G:\00. PROJECTS\API\Inventory\templateJSON\kerjaOCR\Lib\site-packages\paddle/dataset/cifar.pyÚ
read_batchz"reader_creator.<locals>.read_batch0   sm   è ø€ Ø�W‰~ˆØ—‘˜9 e§i¡i°ÀÓ&EÓFˆØÐ!Ð!Ð!Ü   vÖ.‰MˆF�EØ˜E‘>×)Ñ)¬%¯-©-Ó8¼#¸e»*ÐDÓDñ /ùs   ‚A0A2c               3   ó  •K  — 	 t        j                  ‰d¬«      5 } ˆfd„| D «       }|D ]8  }t        j                  | j	                  |«      d¬«      } ‰|«      E d {  –—†  Œ: 	 d d d «       ‰sy Œm7 Œ# 1 sw Y   ŒxY w­w)NÚr)Úmodec              3   óR   •K  — | ]  }‰|j                   v r|j                   –— Œ  y ­w)N)Úname)Ú.0Ú	each_itemÚsub_names     €r   Ú	<genexpr>z1reader_creator.<locals>.reader.<locals>.<genexpr>:   s)   øè ø€ ð á%&˜	Ø 9§>¡>Ñ1ð —N•NÙ%&ùs   ƒ$'Úbytes)Úencoding)ÚtarfileÚopenÚpickleÚloadÚextractfile)ÚfÚnamesr   r   ÚcycleÚfilenamer   r   s       €€€€r   Úreaderzreader_creator.<locals>.reader7   s|   øè ø€ ØÜ—‘˜h¨SÕ1°Qóá%&ó�ó "�DÜ"ŸK™K¨¯©°dÓ(;ÀgÔN�EÙ)¨%Ó0×0Ñ0ñ "÷ 2ñ Øð ð 1ø÷ 2Ð1üs/   ƒB œAA4ÁA2ÁA4Á&B Á2A4Á4A=Á9B © )r(   r   r'   r)   r   s   ``` @r   Úreader_creatorr+   /   s   û€ òE÷ð  €Mó    z2.0.0zpaddle.vision.datasets.Cifar100é   z>Please use new dataset API which supports paddle.io.DataLoader)ÚsinceÚ	update_toÚlevelÚreasonc                  ó|   — t        t        j                  j                  j	                  t
        dt        «      d«      S )zÔ
    CIFAR-100 training set creator.

    It returns a reader creator, each sample in the reader is image pixels in
    [0, 1] and label in [0, 99].

    :return: Training reader creator
    :rtype: callable
    ÚcifarÚtrain©r+   ÚpaddleÚdatasetÚcommonÚdownloadÚCIFAR100_URLÚCIFAR100_MD5r*   r,   r   Útrain100r<   J   s0   € ô  Ü�‰×Ñ×&Ñ&¤|°W¼lÓKØóð r,   c                  ó|   — t        t        j                  j                  j	                  t
        dt        «      d«      S )zÍ
    CIFAR-100 test set creator.

    It returns a reader creator, each sample in the reader is image pixels in
    [0, 1] and label in [0, 99].

    :return: Test reader creator.
    :rtype: callable
    r3   Útestr5   r*   r,   r   Útest100r?   `   s0   € ô  Ü�‰×Ñ×&Ñ&¤|°W¼lÓKØóð r,   zpaddle.vision.datasets.Cifar10c                 ó€   — t        t        j                  j                  j	                  t
        dt        «      d| ¬«      S )a  
    CIFAR-10 training set creator.

    It returns a reader creator, each sample in the reader is image pixels in
    [0, 1] and label in [0, 9].

    :param cycle: whether to cycle through the dataset
    :type cycle: bool
    :return: Training reader creator
    :rtype: callable
    r3   Ú
data_batch©r'   ©r+   r6   r7   r8   r9   ÚCIFAR10_URLÚCIFAR10_MD5rB   s    r   Útrain10rF   v   ó3   € ô$ Ü�‰×Ñ×&Ñ&¤{°G¼[ÓIØØôð r,   c                 ó€   — t        t        j                  j                  j	                  t
        dt        «      d| ¬«      S )a  
    CIFAR-10 test set creator.

    It returns a reader creator, each sample in the reader is image pixels in
    [0, 1] and label in [0, 9].

    :param cycle: whether to cycle through the dataset
    :type cycle: bool
    :return: Test reader creator.
    :rtype: callable
    r3   Ú
test_batchrB   rC   rB   s    r   Útest10rJ   �   rG   r,   c                  óÐ   — t         j                  j                  j                  t        dt
        «       t         j                  j                  j                  t        dt        «       y )Nr3   )r6   r7   r8   r9   rD   rE   r:   r;   r*   r,   r   ÚfetchrL   ¨   s<   € ô ‡N�N×Ñ×"Ñ"¤;°¼ÔEÜ
‡N�N×Ñ×"Ñ"¤<°¼,ÕGr,   )F)Ú__doc__r"   r    r   Úpaddle.dataset.commonr6   Úpaddle.utilsr   Ú__all__Ú
URL_PREFIXrD   rE   r:   r;   r+   r<   r?   rF   rJ   rL   r*   r,   r   Ú<module>rR      s  ðñó  Û ã ã Ý #à
€à3€
ØÐ3Ñ3€Ø0€ØÐ5Ñ5€Ø1€óñ6 Ø
Ø/Ø
ØKô	ñóðñ  Ø
Ø/Ø
ØKô	ñóðñ  Ø
Ø.Ø
ØKô	òóðñ& Ø
Ø.Ø
ØKô	òóðñ& Ø
Ø.Ø
ØKô	ñHóñHr,   