pytorch 彩色图像转灰度图像实例

yipeiwu_com6年前Python基础

pytorch 库

pytorch 本身具有载入cifar10等数据集的函数,但是载入的是3*200*200的张量,当碰到要使用灰度图像时,可以使用他本身的函数进行修改,以较快速的完成彩色图像转灰度图像

pytorch函数

dataset = dset.CIFAR10(root='../train/data', download=True,transform=transforms.Compose([
        transforms.Scale(200),
        transforms.ToTensor(),
        transforms.Normalize((0.5, 0.5, 0.5), (0.5, 0.5, 0.5)),
       ]))

这里包含了对图像进行的一些处理,尺寸的控制,Normalize等

修改pytorch 库函数

找到transforms 的库函数位置,在后面添加 类 Gray()

class Gray(object)

 def __call__(self, tensor):
  # TODO: make efficient
  R = tensor[0]
  G = tensor[1]
  B = tensor[2]
  tensor[0]=0.299*R+0.587*G+0.114*B
  tensor = tensor[0]
  tensor = tensor.view(1,200,200)
  return tensor

tensor.view 这里使用是为了将tensor 做成 1*200*200的大小,否则出来是200*200

以上这篇pytorch 彩色图像转灰度图像实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python3常用的数据清洗方法(小结)

python3常用的数据清洗方法(小结)

首先载入各种包: import pandas as pd import numpy as np from collections import Counter from sklear...

从0开始的Python学习014面向对象编程(推荐)

从0开始的Python学习014面向对象编程(推荐)

简介 到目前为止,我们的编程都是根据数据的函数和语句块来设计的,面向过程的编程。还有一种我们将数据和功能结合起来使用对象的形式,使用它里面的数据和方法这种方法叫做面向对象的编程。 类和对...

详解opencv中画圆circle函数和椭圆ellipse函数

详解opencv中画圆circle函数和椭圆ellipse函数

1.      void ellipse(InputOutputArray img, Point center, Size axes,...

Python实现12306火车票抢票系统

Python实现12306火车票抢票系统

Python实现12306火车票抢票系统效果图如下所示: 具体代码如下所示: import urllib.request as request import http.coo...

python dataframe astype 字段类型转换方法

使用astype实现dataframe字段类型转换 # -*- coding: UTF-8 -*- import pandas as pd df = pd.DataFrame([{'...