https://www.lmlphp.com/user/62501/article/item/1225624/

train.py

网络训练主函数,主要操作有:

  1. 传入训练参数;通常采用argparse库,支持脚本传入。
  2. 网络训练;包括定义网络、加载模型、前向反向传播、保存模型等。
  3. 将训练情况可视化;使用tensorboard绘制loss曲线。

datasets.py

在pytorch中数据加载到模型的操作顺序如下:

  1. 创建一个Dataset对象,一般重载__len____getitem__方法。__len__返回数据集大小,__getitem__支持索引,以便Dataset[i]获取第i个样本。
  2. 创建一个DataLoader对象,将Dataset作为参数传入。
  3. 循环这个DataLoader对象,将img、label加载到模型中进行训练。

我们还需在Dataset对象中定义数据预处理,这里采用:

  1. 0.7-1.4倍的随机尺度缩放

  2. 各通道减去ImageNet的均值

  3. 随机crop下769x769大小

  4. 镜像随机翻转

注意:为了让Image和Label对应,也要对Label作相应的预处理,具体过程详见代码。

PSPNet 代码分析的更多相关文章

  1. Android代码分析工具lint学习

    1 lint简介 1.1 概述 lint是随Android SDK自带的一个静态代码分析工具.它用来对Android工程的源文件进行检查,找出在正确性.安全.性能.可使用性.可访问性及国际化等方面可能 ...

  2. pmd静态代码分析

    在正式进入测试之前,进行一定的静态代码分析及code review对代码质量及系统提高是有帮助的,以上为数据证明 Pmd 它是一个基于静态规则集的Java源码分析器,它可以识别出潜在的如下问题:– 可 ...

  3. [Asp.net 5] DependencyInjection项目代码分析-目录

    微软DI文章系列如下所示: [Asp.net 5] DependencyInjection项目代码分析 [Asp.net 5] DependencyInjection项目代码分析2-Autofac [ ...

  4. [Asp.net 5] DependencyInjection项目代码分析4-微软的实现(5)(IEnumerable<>补充)

    Asp.net 5的依赖注入注入系列可以参考链接: [Asp.net 5] DependencyInjection项目代码分析-目录 我们在之前讲微软的实现时,对于OpenIEnumerableSer ...

  5. 完整全面的Java资源库(包括构建、操作、代码分析、编译器、数据库、社区等等)

    构建 这里搜集了用来构建应用程序的工具. Apache Maven:Maven使用声明进行构建并进行依赖管理,偏向于使用约定而不是配置进行构建.Maven优于Apache Ant.后者采用了一种过程化 ...

  6. STM32启动代码分析 IAR 比较好

    stm32启动代码分析 (2012-06-12 09:43:31) 转载▼     最近开始使用ST的stm32w108芯片(也是一款zigbee芯片).开始看他的启动代码看的晕晕呼呼呼的. 还好在c ...

  7. 常用 Java 静态代码分析工具的分析与比较

    常用 Java 静态代码分析工具的分析与比较 简介: 本文首先介绍了静态代码分析的基 本概念及主要技术,随后分别介绍了现有 4 种主流 Java 静态代码分析工具 (Checkstyle,FindBu ...

  8. SonarQube-5.6.3 代码分析平台搭建使用

    python代码分析 官网主页: http://docs.sonarqube.org/display/PLUG/Python+Plugin Windows下安装使用: 快速使用: 1.下载jdk ht ...

  9. angular代码分析之异常日志设计

    angular代码分析之异常日志设计 错误异常是面向对象开发中的记录提示程序执行问题的一种重要机制,在程序执行发生问题的条件下,异常会在中断程序执行,同时会沿着代码的执行路径一步一步的向上抛出异常,最 ...

  10. [Asp.net 5] DependencyInjection项目代码分析4-微软的实现(2)

    在 DependencyInjection项目代码分析4-微软的实现(1)中介绍了“ServiceTable”.“ServiceEntry”.“IGenericService”.“IService”. ...

随机推荐

  1. 24js Number(数字)对象

    <!DOCTYPE html> <html lang="en">   <head>     <meta charset="UTF ...

  2. Hadoop完全分布式开发配置流程

    完全分布式开发 整体流程 1.准备3台纯净虚拟机 2.修改每台ip,主机名,主机映射,关闭防火墙 3.安装jdk和hadoop,配置环境变量 4.集群分发脚本编写 5.集群配置 6.ssh免密登录 7 ...

  3. starlette.routing.NoMatchFound

    目前正在学习FastAPI, 目前是学习到了引入静态文件.这是我引入的本地文件的方式 url_for('/static', path='/imgs/favicon.ico') 只要启动服务,就会报错5 ...

  4. vue+vant-ui移动端适配 宽高

    一:在vue中安装vant 1.npm i vant -S 2.npm i babel-plugin-import -D // 在.babelrc 中添加配置 { "plugins" ...

  5. xh_零基础网站渗透第一部

    一.认识常见网站类型 1.1asp:asp是动态服务器页面(active server page)的英文缩写.是微软公司开发的代替cgi脚本程序的一种应用,它可以与数据库和其它程序进行交互,是一种简单 ...

  6. temp_laijx_2023

    ############################ [{\"itemKey\": \"jenkinsConfig\",\"itemValue\& ...

  7. ptyhon基础课程_4

    16 循环语句 1.while 语句的格式:"while 条件 :" while True : #循环输出"你好,世界" print ("你好,世界& ...

  8. Gtiee_上传本地项目

    Git_本地代码上传到码云 本文仅作学习记录,方便日后翻看 创建本地仓库 找到自己本地代码的文件夹,打开Git GUI Here,输入git init创建本地仓库,当前文件夹下有.git文件表示创建成 ...

  9. vm-linux-格式化磁盘以及挂载

    数据盘大小20g 文件系统xfs 分区工具fdisk 1,虚拟机关机状态,打开设置新添加一个20g硬盘 2,重新启动虚拟机,并登陆linux,打开命令窗口 3,对磁盘进行分区 输入 fdisk -l ...

  10. MxDraw云图平台 2022.08.24更新

    SDK开发包下载地址: https://www.mxdraw.com/ndetail_30187.html 1. 增加对像扩展数据功能 2. 增加CAD GIS使用功能 https://www.mxd ...