Pytorch 官方文档:https://pytorch.org/docs/master/generated/torch.roll.htmlhttps://pytorch.org/docs/master/generated/torch.roll.html

官方案例:

>>> import torch
>>> x=torch.tensor([1,2,3,4,5,6,7,8]).view(4,2)
>>> x
tensor([[1, 2],[3, 4],[5, 6],[7, 8]])
>>> torch.roll(x,shifts=1,dims=0)
tensor([[7, 8],[1, 2],[3, 4],[5, 6]])
>>> torch.roll(x,shifts=-1,dims=0)
tensor([[3, 4],[5, 6],[7, 8],[1, 2]])
>>> torch.roll(x,shifts=(2,1),dims=(0,1))
tensor([[6, 5],[8, 7],[2, 1],[4, 3]])
>>>

>>> import torch
>>> x=torch.arange(1,17).view(4,4)
>>> x
tensor([[ 1,  2,  3,  4],[ 5,  6,  7,  8],[ 9, 10, 11, 12],[13, 14, 15, 16]])
>>> y=torch.roll(x,shifts=-1,dims=0)
>>> y
tensor([[ 5,  6,  7,  8],[ 9, 10, 11, 12],[13, 14, 15, 16],[ 1,  2,  3,  4]])
>>> z=torch.roll(y,shifts=-1,dims=1)
>>> z
tensor([[ 6,  7,  8,  5],[10, 11, 12,  9],[14, 15, 16, 13],[ 2,  3,  4,  1]])
>>>

测试图片代码及效果:

from PIL import Image as Image
import torch
import torchvision.transforms.functional as T
import torch.nn.functional as F
import numpy as np
from torchvision import transforms
import matplotlib.pyplot as pltpath = r'C:\Users\Administrator\Desktop\Pytorch\downsample\image\1.jpg'# 显示图片
unloader = transforms.ToPILImage()  # reconvert into PIL imagedef imshow(tensor, title=None):plt.figure()image = tensor.cpu().clone()  # we clone the tensor to not do changes on itimage = image.squeeze(0)      # remove the fake batch dimensionimage = unloader(image)plt.imshow(image)if title is not None:plt.title(title)plt.show()if __name__ == '__main__':image = Image.open(path)img = T.to_tensor(image)print(img.shape)x = img.unsqueeze(0)print(x.shape)imshow(x, title='Image_1')y = torch.roll(x, shifts=-1000, dims=3)imshow(y, title='')z = torch.roll(x, shifts=1000, dims=2)imshow(z, title='')

torch.roll() 函数用法相关推荐

  1. torch.roll 函数的理解

    torch.roll 函数官方解释 如果是看swin-transformer进来的,推荐看看GitHub上的这个问题,会很有帮助! https://github.com/microsoft/Swin- ...

  2. [pytorch]torch.roll函数

    torch中的roll函数可以用于张量的位置变换操作. 博客推荐 import torch import numpy as np import matplotlib.pyplot as pltshif ...

  3. PyTorch疑难杂症(1)——torch.matmul()函数用法总结

    目录 一.函数介绍 二.常见用法 2.1 两个一维向量的乘积运算 2.2 两个二维矩阵的乘积运算 2.3 一个一维向量和一个二维矩阵的乘积运算 2.4 一个二维矩阵和一个一维向量的乘积运算 2.5 其 ...

  4. torch.contiguous()函数用法

    在看代码的时候发现了torch.contiguous()这个函数,那么它有什么用途呢? 1)背景知识 首先得知道一个tensor的shape和stride的区别.以二维矩阵为例,shape = [ro ...

  5. torch.cat() 函数用法

    torch.cat是将两个张量(tensor)拼接在一起,cat是concatnate的意思,即拼接,联系在一起. 使用torch.cat((A,B),dim)时,除拼接维数dim数值可不同外其余维数 ...

  6. torch.roll() 用法解读

    torch.roll(input, shifts, dims=None) -> Tensor 定义 沿给定维度滚动张量输入.超出最后一个位置的元素在第一个位置重新引入.如果 dims 为 Non ...

  7. torch.load_state_dict()函数的用法总结

    在Pytorch中构建好一个模型后,一般需要进行预训练权重中加载.torch.load_state_dict()函数就是用于将预训练的参数权重加载到新的模型之中,操作方式如下所示: sd_net = ...

  8. conv2d的输入_pytorch1.0中torch.nn.Conv2d用法详解

    Conv2d的简单使用 torch 包 nn 中 Conv2d 的用法与 tensorflow 中类似,但不完全一样. 在 torch 中,Conv2d 有几个基本的参数,分别是 in_channel ...

  9. Pytorch中的collate_fn函数用法

    Pytorch中的collate_fn函数用法 官方的解释:   Puts each data field into a tensor with outer dimension batch size ...

最新文章

  1. java读取本地文件_java 读取本地文件实例详解
  2. 推荐​一款Java音频视频编码器,很赞~
  3. VTK:绘图之BarChart
  4. Java面试题 20在面向对象编程里,经常使用is-a来说明对象之间的继承关系
  5. 计算机技术在工程施工中的应用,浅析计算机技术及网络在工程施工中的应用
  6. 计算机应用基础工作页,计算机应用基础工作页
  7. c++ 哈希_Redis源码解析十一--Hash键实现Redis 哈希键命令实现(t_hash)
  8. Activiti 手工任务(manualTask)
  9. Android Xfermode 实战 实现圆形、圆角图片
  10. Mac上几款好用磁盘分析备份管理工具
  11. 安装SAS可能遇到的各种问题
  12. 德标螺纹规格对照表_(外)内六角螺塞标准编号-国家标准JB/德标DIN
  13. PostgreSQL 命令行客户端 psql 使用指南
  14. java是用什么语言写的_java用什么开发出来的?
  15. python修改文件夹下文件夹的名字
  16. 风声日期时间选择器的一些小小的使用心得
  17. 魔力宝贝服务器ip修改,魔力宝贝修改代码一览表
  18. 移动地图应用普及给企业带来的利益
  19. scroll lock键 和 sandy bridge
  20. 如何找回回收站清空的文件

热门文章

  1. 华硕win10键盘失灵_win10系统下电脑键盘失灵怎么解决
  2. 【19调剂】齐鲁工业大学(山东省科学院)2019年硕士研究生预调剂信息
  3. 长庆企业信息化管理课件_长庆油田信息化建设的现状及需要注意的问题
  4. 本体创始人李俊:公链和跨界是未来区块链发展的关键(GBCAX)
  5. java导出word实现方式一,在jsp中实现
  6. d3dcompiler_47.dll缺失怎么修复
  7. C/C++笔试题(11)
  8. 半导体行业十万级净化车间尘埃粒子监测
  9. 模拟测静电场实验报告
  10. matlab分布式计算报告,简单的matlab分布式计算