读取数据集图片

1:展示数据集中某一张图片的颜色、尺寸和图片。

import matplotlib.pyplot as plt
from PIL import Image
 
img = Image.open('images/n01440764_tench.JPEG')#一定不要忘记改路径
print(img.size)
print(img.mode)
plt.imshow(img) 
plt.show()

2:查看数据集里有多少张图片。

import os
import torch
path ='images'  #文件夹路径
count = 0
for file in os.listdir(path): #file 表示的是文件名
    count = count+1
print(count)

3:查看维度和类型。


import matplotlib.pyplot as plt
import cv2
 
img = cv2.imread('images/n01440764_tench.JPEG')
print(img.shape)
print(type(img))
io.imshow(img)
plt.show()
#以上代码读出来的图片会变色,是因为cv2读取彩色图片通道顺序为B、G、R,PIL显示图片是R、G、B顺序,因此读出来图片颜色会改变,需要对图像通道进行调序。

#不变色版本

import matplotlib.pyplot as plt
import cv2
from skimage import io,data


 
img = cv2.imread('images/n01440764_tench.JPEG')
b,g,r = cv2.split(img)
img = cv2.merge([r,g,b])
print(img.shape)
print(type(img))
io.imshow(img)
plt.show()

Image.open()读出来的图片是没有shape这个说法的,即只显示图片尺寸,没有通道数。

##深度学习过程中,需要制作训练集和验证集、测试集。
 
import os, random, shutil
def moveFile(fileDir):
        pathDir = os.listdir(fileDir)    #取图片的原始路径
        filenumber=len(pathDir)
        rate=0.1    #自定义抽取图片的比例,比方说100张抽10张,那就是0.1
        picknumber=int(filenumber*rate) #按照rate比例从文件夹中取一定数量图片
        sample = random.sample(pathDir, picknumber)  #随机选取picknumber数量的样本图片
        print (sample)
        for name in sample:
                shutil.move(fileDir+name, tarDir+name)
        return
 
if __name__ == '__main__':
    fileDir = "./source/"    #源图片文件夹路径
    tarDir = './result/'    #移动到新的文件夹路径
    moveFile(fileDir)

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值