首页 > 编程知识 正文

entendre和ecouter区别,cifar100分类识别率

时间:2023-05-06 20:37:13 阅读:126791 作者:3287

cifar CIFAR数据集是虚拟目录

(teachingcomputerstorecognizeobjects ) )的子集主要由三位教授从谷歌和各种搜索引擎的图像中收集。

备注: cifar官网

1.cifar10由60000张32*32彩色图像组成,图像有10种,每类有6000张图像。 分别包含50000个训练图像和10000个测试图像。

类型为以下:

2 .名为cifar10的数据集与cifar10类似。 有100个类,每个类包含600个图像,600个图像包含500个训练图像和100个测试图像。 100类实际上由20个类组成。 每个类包含五个子类。 (5*20=100 )。

类型如下:

3 .数据结构(Python版本) cifar10的数据格式如下:

1标签3072像素. 1标签3072像素的第一个字节是第一个图像的标签,是0-9范围内的数字。 以下3072字节是图像像素的值。 前1024个字节是红色通道值,后1024个绿色,最后1024个蓝色。

CIFAR-100二进制版本与CIFAR-10二进制版本类似,但每个图像有两个标签字节(粗略和精细)和3072像素字节,因此二进制文件如下所示:

1 x粗标签1 x精标签3072 x像素.1 x粗标签1 x精标签3072 x像素cifar100 python版本的数据结构defunpickle(file ) :importpicklewithopen (文件), ' Rb ' (asfo : dict=pickle.load (fo,encoding='bytes ' ) returnDICT.keys ) #DICT_keys ) ) b'data,b '

序列化过程将文本信息转换为二进制数据流,使其更容易存储在硬盘上。 另外,需要读取文件时,从硬盘读取数据。

反序列从文件中检索原始数据,如字符串、列表和词典。

PIL将三种颜色的像素组合存储在一张图像中

matplotlib.image负责将黑白通道的二维排列保存为一张图像

4.1 cifar10可视化: importnumpyasnpfrompilimportimportpickleimportosimportmatplotlib.imageasplimgchannel=3width=32 heigh classification=['airplane '、' automobile '、' bird '、' cat '、' deer '、' dog '、' frog ', ' hhot' 'truck']forIinrange(5) : withopen (./cifar-10-batches-py/data _ batch _ ' str ) I1 ), mode='Rb'(asfile:#数据集在脚本的上一个文件夹下由data_dict=pickle.load(file,encoding='bytes ' ) data=list () data _ path='./pic3/' ifno tos.path.exists (data _ path ) 3360OS.makedirs(data_path ) forIinrange ) 110也是自己b ) IR=image.fromarray(r ) ig=Image.fromarray(g ) g ) ib=Image.fromarray(b ) RGB=image.merge ),(id ) ima ib ) name='img-'str(I )-' class ification [ labels [ I ] ] '.png ' RGB.save (数据_ pathname,' png ' ) )

4.2 cifar100 cifar100的文件结构与cifar10不同,数据在一个文件夹中只有50000张图像,有两个选项卡,通过返回的dict密钥可以看到该选项卡。

知道了那个和cifar10之后,改写前一段代码就可以实现了。

#-* -编码: utf-8-* - importpickleaspimportnumpyasnpimportmatplotlib.pyplotaspltimportmatplotlib.imageasplimgfrompilimportimagedefload _ cifatiord r'''withopen(filename,' rb ' ) as f :数据dict=p.load (f ) f,encoding='bytes ' ) # x=data dict [ b ' data 32 ) x=data dict [ b ' data ' ] y=data dict [ b ' coarse _ labels ' ] data dict [ b ' fine _ labels ' ] x=x.reshape (55292; yif_name_=='__main_':#imgx,imgy=load _ cifar _ batch ('./cifar-10-batches-py/() ) 正在存储imgy=load _ cifar _ batch (./cifar-100-python/train ) ) print (imgx.shape ) print ) (图像: ) ) forror 删除这个注释可以很容易地检索所有图像,图像会变多。 一定时间img0=imgs [0] img1=imgs [1] img2=imgs [2] i0=image.from array (img0) i1=image.from array (img1) I2 ) i2 ) ) name=(img ) str ) ).png ) img.save )./PIC1/'name,' png ' ) #文件夹下是RGB融合后的图像forjinrange(imgs.shape

注意:还在其他文件夹中存储了三种颜色的单通道图像

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。