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. 谁是“艾灵”?是腾讯的真国风 AI 虚拟人!
  2. Python基本语法_基本数据类型_数值型详解
  3. JVM:gc什么时候开始?System.gc()能保证gc一定发生吗?
  4. mysql查询大量数据报错_mysql 查询大量数据报错
  5. ESP32彩屏GUI试玩
  6. 苏老师首播3小时!超500人观看!录屏!源码!PPT……你要的都在这里!
  7. jcmd_jcmd,大约JDK 11
  8. 系统变量之System.getenv()和System.getProperty()
  9. 类似华容道一类搜索中,状态的Hash方法(转)
  10. python 遍历_Python中遍历列表的方法总结
  11. tensorflow学习3---mnist
  12. 编译并刷入nexus 6p手机
  13. Java速成系列-01-什么是速成
  14. echarts+vue3实战(1)
  15. 【玩转数据系列十五】机器学习PAI为你自动写歌词,妈妈再也不用担心我的freestyle了(提供数据、代码)
  16. linux shell提示文件不存在,Bash检查是否显示文件不存在?
  17. opencv vs2010 应用程序无法正常启动(oxc000007b) 解决
  18. 【中亦安图】关于数据库文件损坏风险的提醒(3)
  19. 报表相关的同比和环比
  20. 基于FFmpeg4.1的视频播放器的极简实现(音视频学习笔记四)

热门文章

  1. 提醒大家提高安全意识: 虎口脱险记
  2. 恶意软件NOKKI和朝鲜“Group123”APT组织关联的最新证据
  3. 第一个divcss属性失效_复合材料失效理论知多少(三):一战封神Pinho理论
  4. 9-5 删除字符串中指定字符
  5. 【人脸识别】基于主成分分析PCA算法人脸识别门禁系统含Matlab源码
  6. 科普:DisplayPort与HDMI的比较
  7. 高级计算机网络 外文文献,计算机网络新技术外文文献翻译
  8. 《Real-Time Rendering 4th Edition》全文翻译 - 第4章 变换(下)4.5 ~ 4.7
  9. iOS网络NSURLSession使用详解
  10. 初来北京的两三天-我被这个地方感动的想流泪