PyTorch图像处理入门:图片张量、通道分解与合成及裁剪实战
创作时间:
作者:
@小白创作中心
PyTorch图像处理入门:图片张量、通道分解与合成及裁剪实战
引用
CSDN
1.
https://blog.csdn.net/weixin_43031313/article/details/139879605
本文将详细介绍如何使用PyTorch对图片张量进行处理,包括读取图片、建立张量、以及对图片进行通道分解和裁剪等操作。适合有一定Python基础和机器学习背景的读者。
一、导入所需库
from PIL import Image
import torch
import numpy as np
import matplotlib.pyplot as plt
二、读取图片
pic = np.array(Image.open('venice-boat.jpg'))
上述代码解释:先用Image.open()方法读取jpg格式图片,再用np.array()方法将图片转成numpy数组(ndarray)格式。
三、建立张量
图片在PyTorch中以3维张量表示。以下代码将图片转换成张量形式:
pic_tensor = torch.from_numpy(pic)
打印张量数据内容:
print(pic_tensor)
输出:
tensor([[[ 47, 138, 221], # 每个像素点的RGB颜色值
[ 49, 138, 220],
[ 50, 139, 221],
...,
[ 89, 149, 221],
[ 87, 150, 221],
[ 86, 149, 220]],
[[ 47, 138, 221],
[ 49, 138, 220],
[ 50, 139, 221],
...,
[ 88, 148, 220],
[ 85, 148, 219],
[ 85, 148, 219]],
[[ 47, 138, 221],
[ 49, 138, 220],
[ 50, 139, 221],
...,
[ 84, 147, 218],
[ 84, 147, 218],
[ 83, 146, 217]],
...,
四、通过张量对图片进行操作
(注:在以下的各个操作下,还需要用plt.show()语句才能将图片输出到屏幕上。)
1、打印整张图片
plt.imshow(pic)
2、分RGB通道打印图片
输出通道1:
plt.imshow(pic_tensor[:, :, 0].numpy())
输出通道2:
plt.imshow(pic_tensor[:, :, 1].numpy())
输出通道3:
plt.imshow(pic_tensor[:, :, 2].numpy())
注意: 三通道并不是简单的算术叠加,例如以下代码的输出和原图大相径庭:
from PIL import Image
import torch
import numpy as np
import matplotlib.pyplot as plt
pic_1 = np.array(Image.open('Channel_1.jpg'))
pic_2 = np.array(Image.open('Channel_2.jpg'))
pic_3 = np.array(Image.open('Channel_3.jpg'))
pic_tensor_1 = torch.from_numpy(pic_1)
pic_tensor_2 = torch.from_numpy(pic_2)
pic_tensor_3 = torch.from_numpy(pic_3)
pic_tensor = pic_tensor_1 + pic_tensor_2 + pic_tensor_3
plt.imshow(pic_tensor.numpy())
plt.show()
输出图片:
3、裁剪图片
对图片张量的裁剪在其前2个维度上进行(第3个维度为颜色通道),示例代码如下:
plt.imshow(pic_tensor[50: 1050, 400: 800, :].numpy())
裁剪结果:
热门推荐
“成也萧何,败也萧何”,拜占庭帝国军区制,如何见证帝国兴衰?
英国驾照积分制度详解:从获取到恢复全攻略
机挖土方在运距1km以内施工工艺详解
海外谈中国:联合飞机公司"镧影R6000"亮相 最大倾转旋翼无人机
哈夫曼编码:一种无损数据压缩算法
起点阅文合同条款揭秘:保障作家权益,促进内容创作与合作
英国护国公的生平及其对英国历史的影响
CVPR 2024 | 自动驾驶世界模型四维时空预训练
计算机视觉的坐标系:世界坐标系、相机坐标系、图像坐标系、像素坐标系
如何连接断裂的自来水管并保证供水正常?这种连接方法的稳定性如何?
家常虾仁烹饪指南:美味制作,海鲜享受无难度
转移财产违法吗?一文详解财产转移的法律边界
侯宗原国学易经如何应用到日常生活和工作决策中
剖宫产痛不痛,关键看“术后镇痛”
人工智能训练师怎么考呢?需要哪些条件?好考吗?
算筹如何成为计算利器的?
B2C如何提升CRM
安防新境界:基于嵌入式技术的智能远程视频监控系统
智能家居中使用无线通信协议(ZigBee)
小麦基因组数据库:全球小麦研究的重要资源平台
当前教育的几个宏观层面的新理念
心跳异常、不规律?射频消融术让“失控”的心脏回归正常!
电生理检查+射频消融,让你的心不再“狂飙”
Windows 11 24H2版本强制更新 玩游戏还是小心点
红七军的历史沿革及不同时期主官情况
北上抗日先遣队(红7军团)粟裕浴血之旅
流传了80多年,才公开出版的心理学著作,震惊全世界
如何培养更加自律的孩子?
去土耳其带啥货币?选择指南与实用建议
外商投资形式有哪些:全面解析法律规定与实务操作