自用pytorch之图片、文本导入、标签导出(小土堆)

学习路线 爆肝杰哥 装一系列东西 在G盘
小土堆

首先插入 dataset: from torch.utils.data import Dataset
继承dateset类:

获取照片路径:
from PIL import Image
img path=‘’D//。。。。。。。。‘’ img_path是一个字符串变量,添加地址时注意 两个斜杠
img=Image.open(img_path) 变量img获取的是图片, 用的是Image.open的方法

获取一组照片:
导入路径:dir_path=“D:\PyCharm\Py_Projects\XiaoTuDui\dataset\train\ants” dir_path是一个字符串变量
import os os有方法
img_path_list=os.listdir(dir_path) 通过os的方法,导入文件夹路径从而创建列表

实战讲解

目录如下:

实战

up用的相对路径 root_dir=“dataset/train”
lable_dir=“ants”
两个路径 拼接功能: path=os.path.join(root_dir,lable_dir)

然后我来:root_dir复制的根路径

整合后 path=‘XiaoTuDui\datase\train\ants’

构建全局变量,相当于全局函数
检查时报错了。于是我换成了绝对地址

此时img_path成为图片的列表。

构建类(相当于一个新函数,idx是自变量)
定义img_name是地址中图片的名称(字符串类型) (通过列表img_path传输)

比如我让idx=0试了下

在这里插入代码片
```*斜体样式*
import os        
from PIL import Image                                               *PIL库可以插Image*
root_dir="D:\\PyCharm\\Py_Projects\\XiaoTuDui\\dataset\\train"                   *这里最好导入绝对地址*
lable_dir="ants"                                                                  *ants是train的下级文件,既是地址,也是标签*
path=os.path.join(root_dir,lable_dir)                              *os.path,join起到粘连左右,把地址输出,以字符串类型输出*
img_path=os.listdir(path)			             *通过os.listdir把照片排序,生成列表给 img_path*
img_name=img_path[idx]                          *把列表的第【idx】项传递给img_name*    效果如下

![在这里插入图片描述](https://img-blog.csdnimg.cn/671460f49e2e4219b4d55527da7782e3.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/0343a2edcee3486ba896bc7c9a3ddd51.png)






```python   **
构造一个类。相当于构建一个获取项目的函数

    def __getitem__(self, idx):
        img_name=self.img_path[idx]                         //把全局变量中的照片名字传递给 img_name//
        img_item_path=os.path.join(self.root_dir,self.lable_dir,img_name)     //定位照片具体位置(最精确位置)//
        img=Image.open(img_item_path)   //把地址中的图片打开传递给img//
        lable=self.lable_dir            //把本次ants文件夹的标签传递给lable//
        return img,lable				//结果返回为照片,标签
        
    def __len__(self):
        return len(self.img_path)

计算长度。

完整体的dataset类如下(相当于一个完整的函数)

class MyData(Dataset):
    def __init__(self,root_dir,lable_dir):
        self.root_dir=root_dir
        self.lable_dir=lable_dir
        self.path=os.path.join(root_dir,lable_dir)
        self.img_path=os.listdir(self.path)

    def 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值