Pytorch-UNet-master>utils>data_loading.py
模块,包 在package_runoob同级目录下,用test.py调用package_runoob包中内容

参考链接:
Dataset 抽象类,所有创建的数据集都需要进行子类化,并重写__len__和__getitem__
from torch.utils.data import Dataset class BasicDataset(Dataset):
参考链接:
torch.utils.data - PyTorch中文文档 (pytorch-cn.readthedocs.io)
https://www.bilibili.com/video/BV1hE411t7RN?share_source=copy_web
assert() 宏,断言,程序在假设条件下,能够正常良好的运作
参考链接:
https://www.runoob.com/w3cnote/c-assert.html
splitext() 用于分离文件名与扩展名
import os
os.path.splitext(path)
e.g.


参考链接:
Python分离文件名与扩展名-Python splitext函数-嗨客网 (haicoder.net)
logging.info() 类似print()的功能
参考链接:
python中logging模块上篇 - 知乎 (zhihu.com)
class Time():
@staticmethod
def sec_minutes(s1,s2):
可以直接用,调用
Time.sec_minutes()
也可以创建实例,调用
t=Time() t.sec_minutes()
参考链接:
简述python中的@staticmethod作用及用法 - 云+社区 - 腾讯云 (tencent.com)
pil_img = pil_img.resize((newW, newH), resample=Image.NEAREST if is_mask else Image.BICUBIC)
np.asarray() 将结构数据转化为ndarray类型
import imghdr
import cv2
import numpy as np img=cv2.imread("./00021_mask.png")
img=np.asarray(img) print("img.ndim:",img.ndim)
print("img.shape",img.shape)
print("len(img.shape)",len(img.shape))

img.shape 输出数组的长、宽、通道数
np.transpose() 类似数组转置的操作,(0,1,2)对应(x,y,z)
arr.transpose((2,0,1))
相当于转成了(z, x, y)
numpy.load() 函数从具有npy扩展名(.npy)的磁盘文件返回输入数组
参考链接:
Python numpy.load()用法及代码示例 - 纯净天空 (vimsky.com)
Image.fromarray() array到image的转换
参考链接:
(17条消息) Image.fromarray的用法(实现array到image的转换)_weixin_39450145的博客-CSDN博客_image.fromarray
glob.golb() 查找符合特定规则的文件路径名
super()._init_() 自动继承父类属性
btw 整理Dataset--BasicDataset--CarvanaDataset关系
from torch.utils.data import Dataset class BasicDataset(Dataset):
def __init__(self, images_dir: str, masks_dir: str, scale: float = 1.0, mask_suffix: str = ''):
def __len__(self):
def __getitem__(self, idx): class CarvanaDataset(BasicDataset):
def __init__(self, images_dir, masks_dir, scale=1):
super().__init__(images_dir, masks_dir, scale, mask_suffix='_mask')
Dataset 是torch中的一个抽象类,用于获取每一个数据及其label
BasicDataset是一个继承了Dataset的子类,需要重写__len__和__getitem__,这里的__init__是一种普通的继承关系,所以BasicDataset中一些属性需要自己定义、自己赋值
CarvanaDataset是一个继承了BasicDataset的子类,super().__init__自动继承父类属性,不需要对父类中定义过的属性再做定义了,可以用于对含_mask的后缀(suffix)实例化。
Pytorch-UNet-master>utils>data_loading.py的更多相关文章
- xxx/labelKeypoint/utils/qt.py:81: RuntimeWarning: invalid value encountered in double_scalars
原代码: return np.linalg.norm(np.cross(p2 - p1, p1 - p3)) / np.linalg.norm(p2 - p1) 出现报错: xxx/labelKeyp ...
- pytorch的torch.utils.data.DataLoader认识
PyTorch中数据读取的一个重要接口是torch.utils.data.DataLoader,该接口定义在dataloader.py脚本中,只要是用PyTorch来训练模型基本都会用到该接口, 该接 ...
- 深度学习(PYTORCH)-3.sphereface-pytorch.lfw_eval.py详解
pytorch版本sphereface的原作者地址:https://github.com/clcarwin/sphereface_pytorch 由于接触深度学习不久,所以花了较长时间来阅读源码,以下 ...
- 【pytorch】torch.utils.data.DataLoader
简介 DataLoader是PyTorch中的一种数据类型.用于训练/验证/测试时的数据按批读取. torch.utils.data.DataLoader(dataset, batch_size=1, ...
- week06 12 后端utils cloudAMQP_client.py 安装pika
我们回到后端 pika是专门处理RabitAMQP的包 或者你可以直接一步到位 我们不能一直让我们的网络爬虫一直爬信息 一是网络消耗很大(cpu) 二是容易被网站发现被禁ip self.connect ...
- https://github.com/PyMySQL/PyMySQL/blob/master/pymysql/connections.py
# Python implementation of the MySQL client-server protocol # http://dev.mysql.com/doc/internals/en/ ...
- [PyTorch]PyTorch中模型的参数初始化的几种方法(转)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 本文目录 1. xavier初始化 2. kaiming初始化 3. 实际使用中看到的初始化 3.1 ResNeXt,de ...
- tensorflow之数据读取探究(1)
Tensorflow中之前主要用的数据读取方式主要有: 建立placeholder,然后使用feed_dict将数据feed进placeholder进行使用.使用这种方法十分灵活,可以一下子将所有数据 ...
- TFRecord读写简介+Demo 基于Ubuntu18.04+Tensorflow1.12 无WARNING
简介 TFRecord是TensorFlow官方推荐使用的数据格式化存储工具. 它规范了数据的读写方式. 只要生成一次TFRecord,之后的数据读取和加工处理的效率都会得到提高. 将图片转换成TFR ...
- PyTorch源码解读之torch.utils.data.DataLoader(转)
原文链接 https://blog.csdn.net/u014380165/article/details/79058479 写得特别好!最近正好在学习pytorch,学习一下! PyTorch中数据 ...
随机推荐
- Maxim遍历测试工具(monkey升级版)
Maxim 对应GitHub地址:https://github.com/zhangzhao4444/Maxim,其是对Android monkey的改进工具.是基于遍历规则和高性能要求. 条件准备: ...
- centos 7 更改Jenkins 主目录
默认为:/var/lib/jenkiins 1 创建更改后的目录 (所有步骤用root执行!!!) mkdir -p /data/jenkiins 2 将原有目录数据拷贝到更改后的目录 cp -r ...
- MYSQL实现排名函数RANK,DENSE_RANK和ROW_NUMBER
1. 排名分类 1.1 区别RANK,DENSE_RANK和ROW_NUMBER RANK并列跳跃排名,并列即相同的值,相同的值保留重复名次,遇到下一个不同值时,跳跃到总共的排名. DENSE_RAN ...
- leecode编写记录
记录leecode刷题思路 39.组合总数 39. 组合总和 - 力扣(LeetCode) 给你一个 无重复元素 的整数数组 candidates 和一个目标整数 target ,找出 candida ...
- URL Scheme获取
支付宝链接或小程序获取URL Scheme 小程序(以行程卡小程序为例): URL解码https://c.runoob.com/front-end/695/ JS网址解码https://jsrun.n ...
- Astra-20190405
Usage: astra.py [-h] [-c COLLECTION_TYPE] [-n COLLECTION_NAME] [-u URL] [-headers HEADERS] [-method ...
- mac 打开活动监视器(任务管理器)
打开方式 1.快捷键 command+option+esc 选择需要强制退出的app 2.通过菜单 需要查看完整的占用率 应用程序=>实用工具=〉活动监视器
- 「SOL」数树 (LOJ/WC2019)
WC 果然还是 WC # 题面 有一张 \(n\) 个点的图,图上有红蓝两种边(可能重叠),且两种边各自形成一个 \(n\) 个点的树. 用 \(m\) 种颜色给图上的所有点染色.若 \(u,v\) ...
- 牛客小白月赛65——D-牛牛取石子
链接:https://ac.nowcoder.com/acm/contest/49888/D来源:牛客网 牛牛和牛妹在玩游戏,他们的游戏规则是这样的: 一共有两堆石子,第一堆有 aaa 个,第二堆有 ...
- Jmeter六、采样器解析
一.HTTP request sampler 默认端口:80 协议protocol:http,https,file 参数中有特殊字符,勾选编码encode send files with reques ...