pytorch数据处理的操作

张量(256,256)转换为三维通道图片张量(256,256,3)可以采用下面方法:
1.先将张量转换为数组。
2.在numpy数组增加维数(相当于在张量里增加了通道的维度),即(256,256,1)。
3.增加numpy数组维度中的数量(也就是将张量里的一个通道变为3),即(256,256,3)。
4.根据需要来决定是否调整顺序,如:(3,256,256)
5.最后再进行transforms.Totensor()操作转换成张量。
也可以解决单通道图片转换成三通道图片问题。

1.Tensor转换numpy

x=torch.tensor([[1,2,3],[4,5,6]])  #T大写会显示小数点
print(x)
#结果:
tensor([[1, 2, 3],[4, 5, 6]])
print(x.shape) #torch.Size([2, 3])
#张量x转换数组y
y=x.numpy() 
print(y)
#结果:
[[1 2 3][4 5 6]]
print(y.shape) #(2, 3) 和张量完全一样,二维三列的数组,只是数组里无逗号

2.numpy数组增加维数

通过添加一个np.newaxis,在哪个维度添加的则在哪里加中括号来增加维数。

y1=y[np.newaxis,:,:]#在第一个维度(最外层)增加中括号
print(y1)
#结果:
[[[1 2 3][4 5 6]]]
print(y1.shape) #(1, 2, 3)y3=y[:,:,np.newaxis]  #在最后一个维度(最里层)增加中括号
print(y)
#结果:
[[[1][2][3]][[4][5][6]]]
print(y3.shape) #(2, 3, 1)

增加numpy数组维度中的数量

通过拼接函数concatenate(数组,axis)达到目的,axis指定在哪个地方拼接,如axis=2则在第二维度(这里是最里层)拼接。

yy = np.concatenate([y3, y3, y3], axis=2) 
print(y)
#结果:
[[[1 1 1][2 2 2][3 3 3]][[4 4 4][5 5 5][6 6 6]]]
print(yy.shape) #(2, 3, 3)

交换numpy数组各维度

利用transpose(),参数表示交换后的位置

yy1 = yy.transpose(1, 2, 0) 
print(yy1)
#结果:
[[[1 4][1 4][1 4]][[2 5][2 5][2 5]][[3 6][3 6][3 6]]]
print(yy1.shape) #(3, 3, 2)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/333941.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

toastutils报错_史上最好用的Android全量版本更新库XUpdate使用指南

在这里插入图片描述项目简介XUpdate是一个轻量级、高可用性的Android全量版本更新框架。XUpdate是为了解决在不同项目组、不同平台之间进行统一的Android全量版本更新的库。它具有轻量、灵活、低耦合、高可用等特点,可以很方便地定制属于自己的版本更新。设计原由在…

travis-ci_使用Travis-CI的SpringBoot应用程序的CI / CD

travis-ci在本文中,我们将学习如何将Travis CI用于SpringBoot应用程序的持续集成和持续部署(CI / CD)。 我们将学习如何运行Maven构建目标,使用JaCoCo插件,使用SonarCloud代码质量检查,建立泊坞窗图像进行测…

音标、音节、音素、音符

[kəˌmjuːnɪˈkeɪʃn] 👆上面这个叫『音标』,里面有三个『音节』,kə、mjuːnɪ、keɪʃn,mjuːnɪ是『轻读音节』,keɪʃn是『重读音节』,这个『音标』含有11个『音素』,分别为&#xff1…

outlook邮箱邮件大小限制_设置Office 365邮箱默认发送和接收邮件大小限制

Office 365默认的 35MB 的邮件大小限制。Office 365 最大是支持 150MB 的邮件体积的。我们只需用 Windows Powershell 连接 Office 365 ,然后通过命令修改 Exchange Online 中的邮箱计划即可。方法如下:1、连接到 Office 365 PowerShell借助 Office 365 …

python中形参*args和**kwargs简述

形参*args的作用:传递任意数量的实参。 形参*args中的星号让python创建一个名为args的空元组,并将收到的所有值都封装到这个元组中。其实args换成其他的标识符完全没问题,只是习惯上用args。 如下举例: def fun(*args):print(a…

运动基元_Java更快地对基元数组进行排序?

运动基元看来,在不久的将来,Java中的原语排序数组可能会提高性能。 弗拉基米尔雅罗斯拉夫斯基(Vladimir Yaroslavskiy)已在core-libs-dev邮件列表中发布了一条消息 ,标题为“ Dual-Pivot Quicksort的新优化版本 ”&…

Linux 命令之 rpmbuild -- 用于创建 rpm 格式的二进制软件包和源码软件包

文章目录一、命令介绍二、命令选项(一)从 specfile 建立(二)从 tarball 包建立(三)从 source package 包建立(四)其它选项(五)所有 rpm 都可使用的选项&#…

只做macd二次金叉_【教你一招】MACD低位二次金叉

原标题:【教你一招】MACD低位二次金叉来源:K线密码MACD低位二次金叉技术要点1、第二次金叉离第一次金叉距离越近越好;2、MACD第二次金叉的位置以高于第一次金叉为好;3、MACD第二次金叉时结合K线形态上的攻击形态研判(如&#xff1…

计算机领域专业术语中英文对照(时常更新)

机器学习 线性回归(linear regression) 多标签分类(multi-label classification,MLC) 验证集(validation) 均方误差(MSE) 偏差(bias) 方差(variance) 深度学习 多层感知机(MLP) 反向传播(Back Propagation) 张量(Tensor) 随机梯度下降(SGD) 向量(Vector) 标量(Sc…

owasp maven_OWASP依赖性检查Maven插件–必须具备

owasp maven我不得不非常遗憾地承认,我不知道OWASP依赖检查maven插件 。 自2013年以来似乎已经存在。显然GitHub上已有千个项目正在使用它。 过去,我手动检查了依赖项,以根据漏洞数据库检查它们,或者在很多情况下,我只…

软件包管理器 RPM 升级软件包过程分析

升级软件包 alsaplayer-0.99.76-2.2.fc4.i386.rpm,并显示详细的升级信息: rpm -Uvv alsaplayer-0.99.76-2.2.fc4.i386.rpm把显示内容当中对我们有用的挑出来: D: opening db environment /var/lib/rpm/Packages joinenv D: opening d…

ubtunu打开firefox_Linux Ubuntu 终端命令行打开firefox报错

1,报错$ firefox(firefox:2673): GConf-WARNING **: Client failed to connect to the D-BUS daemon:Failed to connect to socket /tmp/dbus-80Eq35bHIz: Connection refused(firefox:2673): GConf-WARNING **: Client failed to connect to the D-BUS daemon:Fail…

自然语言处理领域基本概念笔记

自然语言处理 词向量: 自然语言处理问题要转化为机器学习的问题,首先就要把单词数学化表示,就是用n维实数向量来代表一个单词。 对话系统 对话系统发展历程的三个阶段: 1.基于符号规则和模板的对话系统 2.基于统计机器学习的…

spring-junit4_基于Spring的应用程序-迁移到Junit 5

spring-junit4这是关于将基于Gradle的Spring Boot应用程序从Junit 4迁移到闪亮的新Junit 5的快速文章。Junit 4测试继续与Junit 5 Test Engine抽象一起工作,该抽象为在不同编程模型中编写的测试提供支持。例如,Junit 5支持能够运行JUnit 4测试的Vintage …

如何理解 inode

一、inode是什么? 理解inode,要从文件储存说起。 文件储存在硬盘上,硬盘的最小存储单位叫做"扇区"(Sector)。每个扇区储存512字节(相当于0.5KB)。 操作系统读取硬盘的时候&#xff0c…

go语言os.exit(1)_Go语言-信号os.Interrupt和信号syscall.SIGTERM的应用

实例package mainimport("fmt""os""os/signal""sync""syscall""time")func worker(stop for {select {case fmt.Println("exit")returndefault:fmt.Println("running...")time.Sleep(3)}}}fu…

深度学习基本概念笔记

注意力机制(Attention Mechanism): 注意力机制受到人类视觉注意力机制的启发,即关注图像特定部分的能力。即当神经网络发现输入数据的关键信息后,通过学习,在后继的预测阶段对其予以重点关注。 Attention Mechanism可以帮助模型对输入的X每个…

java api 开发_Java开发人员应该知道的前20个库和API

java api 开发优秀且经验丰富的Java开发人员的特征之一是对API的广泛了解,包括JDK和第三方库。 我花了很多时间来学习API,尤其是在阅读了Effective Java 3rd Edition之后 ,Joshua Bloch建议在Java 3rd Edition中使用现有的API进行开发&#x…

Linux 系统的硬链接和软链接详解

文章目录什么是链接链接用来干什么的硬链接和软链接的区别硬链接和软链接的图示总结我们知道文件都有文件名与数据,这在 Linux 上被分成两个部分:用户数据 (user data) 与元数据 (metadata)。用户数据,即文件数据块 (data block),…

js如何监听元素事件是否被移除_JavaScript 监听元素是否进入/移出可视区域

JavaScript 监听元素是否进入/移出可视区域常规操作防抖节流IntersectionObserver兼容的代码常规操作通常的做法是,监听srcoll事件,根据元素的offset来判断。window.addEventListener(scroll, this.scrollHandle, true);使用getBoundingClientRec()来获取…