transform.Normalize():用均值和标准差对张量图像进行归一化

经常看到

transform.ToTensor(),
transform.Normalize((0.5,0.5,0.5),(0.5,0.5,0.5))

那transform.Normalize()是怎么工作的呢?以上面代码为例,

ToTensor()能够把灰度范围从0-255变换到0-1之间,ToTensor()shape(H, W, C)nump.ndarrayimg转为shape(C, H, W)tensor,其将每一个数值归一化到[0,1],其归一化方法比较简单,直接除以255即可

transforms.Normalize(std=(0.5,0.5,0.5),mean=(0.5,0.5,0.5)),则其作用就是先将输入归一化到(0,1),再使用公式"(x-mean)/std",将每个元素分布到(-1,1)

具体地说,对每个通道而言,Normalize执行以下操作:

image=(image-mean)/std

其中mean和std分别通过(0.5,0.5,0.5)和(0.5,0.5,0.5)进行指定。原来的0-1最小值0则变成(0-0.5)/0.5=-1,而最大值1则变成(1-0.5)/0.5=1.

可我看很多代码里面是这样的:
torchvision.transforms.Normalize(mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225])
这一组值是怎么来的?这一组值是从imagenet训练集中抽样算出来的。

总结:

经过上面normalize()的变换后变成了均值为0 方差为1(其实就是最大最小值为1和-1)

每个样本图像变成了均值为0  方差为1 的标准正态分布,这就是最普通(科学研究价值最大的)的样本数据了

原文链接:https://blog.csdn.net/jzwong/article/details/104272600

transform.Normalize()用法后面参数为什么用(0.5,0.5,0.5)(0.5,0.5,0.5)_studyvcmfc的专栏-CSDN博客

transform.Normalize()用法+后面参数为什么用(0.5,0.5,0.5)(0.5,0.5,0.5)相关推荐

  1. transform.Normalize()用法后面参数为什么用(0.5,0.5,0.5)(0.5,0.5,0.5)

    https://classroom.udacity.com/nanodegrees/nd009-cn-advanced/parts/5f4d630c-d15a-412c-aaeb-b57ad61cd0 ...

  2. A+B for Matrices 及 C++ transform的用法

    题目大意:给定两个矩阵,矩阵的最大大小是M*N(小于等于10),矩阵元素的值的绝对值小于等于100,求矩阵相加后全0的行以及列数. 1 #include<iostream> 2 using ...

  3. transform.normalize

    transform.Normalize() 1.归一化函数 CLASS torchvision.transforms.Normalize(mean, std, inplace=False) 用均值和标 ...

  4. keras中重要的函数用法及参数详解

    1.Dense(全连接层) keras.layers.core.Dense ( units, activation=None, use_bias=True, kernel_initializer='g ...

  5. DEDECMS中Showmsg的用法及参数介绍

    DEDECMS中Showmsg函数是用来显示返回的提示信息以及跳转到相应页面,但是大部分新手并不知道怎么用,本文就着重来讲解下. 1.先看showmsg的格式: ShowMsg($msg,$gourl ...

  6. linux系统下top命令的详细用法、参数详解、以及模式配置

    用过linux系统的人都知道top命令,它是Linux下一个最常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器. top显示系统当前的进程和其他状况,是一 ...

  7. 支持向量机之SVR 用法与参数详解 python

    1. 概念: 针对二分类问题,寻求最优超平面 SVM: 使到超平面最近的样本点的"距离"最大 SVR: 使到超平面最远的样本点的"距离"最小. SVR回归的优势 ...

  8. boost::geometry::strategy::transform::matrix_transformer用法的测试程序

    boost::geometry::strategy::transform::matrix_transformer用法的测试程序 实现功能 C++实现代码 实现功能 boost::geometry::s ...

  9. Linux中last的用法及参数,查看登陆系统用户的信息

    1.作用 功能说明:列出目前与过去登入系统的用户相关信息. linux系统中last命令的作用是显示近期用户或终端的登录情况,它的使用权限是所有用户.通过last命令查看该程序的log,管理员可以获知 ...

最新文章

  1. .net简单算法实现无限级分类(一)
  2. MongoDB ( 五 )高级_索引
  3. Maven的安装文字版(Windows/Linux/Mac)
  4. C\C++对文件的读写操作
  5. 面向对象编程之生成器与迭代器
  6. 【图像超分辨率】SR for RS via Local–Global Combined Network
  7. 贡献开源项目没那么简单,你要负责到底
  8. linux mysql 5.7密码忘记_Mysql5.7.14 linux版密码忘记的找回方法
  9. Bailian2726 采药【模拟】
  10. 手写分页sql_MyBatis-Plus 分页查询以及自定义sql分页的实现
  11. 【SAS系列】SAS入门书籍推荐
  12. iTunes 12.7降级
  13. c#html表格样式大全,table完美css样式,table的基本样式,table样式
  14. python之获取文件当前位置和定位某个位置
  15. VS code + miktex + 内置pdf阅读器 配置latex编译环境
  16. AAAI2023 | 基于课程学习的机器翻译质量评估去噪预训练
  17. 英语足球foteball运动
  18. 从“我爱你”到“我爱钱”
  19. 适于用阿克曼底盘的基于动力学约束的混合A*算法源码
  20. 电视android已停止运行是什么意思,智能电视提示应用停止运行,三种方法亲测有效!...

热门文章

  1. JEECG Framework 3.5.2 (快速开发平台) ACE版本发布
  2. MongoDB数据表基本操作
  3. SpringCloud微服务(06):Config组件,实现配置统一管理
  4. 数据仓库之电商数仓-- 2、业务数据采集平台
  5. C/C++ 类型内存占用详解
  6. JS 点击复制Copy插件--Zero Clipboard
  7. Acey.ExcelX实例演练(1)—从GridView中导出Excel报表
  8. 如何安装redmine插件
  9. 4th, Jan 2012 食物中毒惊魂
  10. Red Hat Linux 253 实验部分