PyTorch构建深度神经网络

1、表示图像

常见的数字图像文件是*.jpg或*.png,其由像素数组组成的。像素值的范围是0-255的标量值,0表示黑色,255表示白色。常见的RGB图像是一个三维向量,向量中的每个分量分别对应于红色、绿色和蓝色的标量值。

图像包含nums*height*width*c的像素,其中nums表示图像数量,height表示像素的行数,width表示像素的列数,c表示通道数。

灰度图像:像素值为0时,图像为黑色;像数值为255时,图像为白色。

RGB图像:R为255,G、B为0时,图像为红色,其他情况同理。

1.1 将图像转换成结构化数组和标量

读取图像,将图像转换为像素值数组。

import cv2, matplotlib.pyplot as  plt

img = cv2.imread('R-C.jpg')

在图像的第50~250行和第40~240列之间进行裁剪。最后,将图像转换为灰度图像

img = img[50:250,40:240]

img_gray = cv2.cvtColor(img, cv2.COLOR_BGR2BGRA)

plt.imshow(img_gray, cmap='gray')

plt.show()

将图像转换为一个25*25的数组

import cv2, matplotlib.pyplot as plt

img = cv2.imread('../R-C.jpg)

img = img[50:250,40:240]

img_gray = cv2.cvtColor(img, cv2.COLOR_BGR2BGRA)

img_gray_small = cv2.resize(img_gray, (25,25))

plt.imshow(img_gray_samll,cmap='gray')

plt.show()

cv2导入图像时,通道顺序时蓝色先,绿色次之,最后是红色,而我们通常习惯于观看基于RGB通道的图像。

import cv2, matplotlib.pyplot as plt

img = cv2.imread('../R-C.jpg')

img = img[50:250,40:240]

img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)

print(img.shape)

crop = img [-3:,-3:]

print(crop)

plt.imshow(crop)

1.2 训练神经网络

导入相关程序包和FMNIST数据集

from torch.utils.data import Dataset,DataLoader

import torch

import torch.nn as nn

import

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值