Pytorch中的variable, tensor与numpy相互转化的方法

yipeiwu_com7年前Python基础

在使用pytorch作为深度学习的框架时,经常会遇到变量variable、张量tensor与矩阵numpy的类型的相互转化的问题,本章结合这实际图像对此转化方法进行实现。

1.加载需要用到的模块

import torch
from torch.autograd import Variable
import matplotlib.pyplot as plt
import matplotlib.image as mpimg

2.显示图片与图片中的一部分区域

test_img = mpimg.imread('example1.jpg')
i_x = 20
i_y = 85
sub_img = test_img[i_y:i_y + 100,i_x:i_x + 100,:] #numpy类型

3.将numpy矩阵转换为Tensor张量

sub_ts = torch.from_numpy(sub_img)  #sub_img为numpy类型

4.将Tensor张量转化为numpy矩阵

sub_np1 = sub_ts.numpy()       #sub_ts为tensor张量

5.将numpy转换为Variable

sub_va = Variable(torch.from_numpy(sub_img))

6.将Variable张量转化为numpy

sub_np2 = sub_va.data.numpy()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

编写Python CGI脚本的教程

编写Python CGI脚本的教程

你是否想使用Python语言创建一个网页,或者处理用户从web表单输入的数据?这些任务可以通过Python CGI(公用网关接口)脚本以及一个Apache web服务器实现。当用户请求一...

Flask框架单例模式实现方法详解

本文实例讲述了Flask框架单例模式实现方法。分享给大家供大家参考,具体如下: 单例模式: 程序运行时只能生成一个实例,避免对同一资源产生冲突的访问请求。 Django &nb...

Python实现的矩阵类实例

本文实例讲述了Python实现的矩阵类。分享给大家供大家参考,具体如下: 科学计算离不开矩阵的运算。当然,python已经有非常好的现成的库:numpy(numpy的简单安装与使用可参考...

pytorch动态网络以及权重共享实例

pytorch 动态网络+权值共享 pytorch以动态图著称,下面以一个栗子来实现动态网络和权值共享技术: # -*- coding: utf-8 -*- import rando...

python常用函数详解

1.函数的介绍 为什么要有函数?因为在平时写代码时,如果没有函数的话,那么将会出现很多重复的代码,这样代码重用率就比较低。。。并且这样的代码维护起来也是很有难度的,为了解决这些问题,就出...