在深度学习中,有时需要查看数据集的信息,因此需要访问文件夹的内容,并对文件夹中的数据集进行操作。因此需要得到数据集(例如单张图片)的绝对路径。
解压数据
# 解压数据
import zipfile
local_zip='./rps.zip'
zip_ref=zipfile.ZipFile(local_zip,'r')
zip_ref.extractall() # 解压,空参数表示解压到与压缩文件同名的文件夹中。里面可以有字符串参数,表示放到这个文件夹下
zip_ref.close()
#
local_zip='./rps-test-set.zip'
zip_ref=zipfile.ZipFile(local_zip,'r')
zip_ref.extractall() # 解压
zip_ref.close()
查看数据集信息
# 查看数据集信息
import os
rock_dir=os.path.join('./rps/rock')
paper_dir=os.path.join('./rps/paper')
scissors_dir=os.path.join('./rps/scissors')
#
# print('total training rock images:',len(os.listdir(rock_dir)))
# print('total training paper images:',len(os.listdir(paper_dir)))
# print('total training scissors images:',len(os.listdir(scissors_dir)))
#
rock_files=os.listdir(rock_dir)
# print(rock_files[:10])
paper_files=os.listdir(paper_dir)
# print(paper_files[:10])
scissors_files=os.listdir(scissors_dir)
# print(scissors_files[:10])
画图
# 画图
import matplotlib.pyplot as plt
import matplotlib.image as mpimg
import os
pic_index=2
next_rock=[os.path.join(rock_dir,fname) for fname in rock_files[pic_index-2:pic_index]]
next_paper=[os.path.join(paper_dir,fname) for fname in paper_files[pic_index-2:pic_index]]
next_scissors=[os.path.join(scissors_dir,fname) for fname in scissors_files[pic_index-2:pic_index]]
for i,img_path in enumerate(next_rock+next_paper+next_scissors):
img=mpimg.imread(img_path)
plt.imshow(img)
plt.axis('off')
plt.show()
主要是os.listdir(),os.path.join这2个函数