使用matplotlib 进行图片显示
1.导入包
import matpoltlib.pyplot as plt
2. 显示图片
plt显示图片要求是RGB格式,如果使用cv2读取的图片要进行转换。
要想进行多图显示,首先要明确一个函数plt.subplot方法
plt.subplot(nrow, ncol, index)
# nrows 和 n cols 分别表示将显示区域划分为 row行 col列的区域,index 表示在哪个区域显示。
例如: subplot(233)表示在当前画布的右上角创建一个两行三列的绘图区域(如下图所示),同时,选择在第 3 个位置绘制子图
接下来就是分别输入要显示的图片使用plt.imshow()
plt.imshow(image1)
最后一步就是显示出来
plt.show()
示例代码
plt.subplot(2,1,1)
plt.imshow(a)
plt.subplot(2,1,2)
plt.imshow(image2)
plt.show()
cv2如何读取中文路径
在python中使用cv2读取和保存含有中文路径的图片
img_path = "H:/下载/新建文件夹/1.jpg"
# 读取图片使用该方法
img = cv2.imdecode(np.fromfile(img_path, dtype = np.uint8), -1)
# 保存路径中含有中文路径使用该方法
save_path = "H:/新建文件夹/1.jpg"
cv2.imencode('.jpg', img)[1].tofile(save_path)
view()函数的使用
在pytorch中我们经常会看到x.view(),这个方法的作用相当于numpy 中的resize(),但是用法可能不太一样。
他的作用可以这样理解,先将tensor 中所有的元素排列成一个一维向量,然后在根据view()中的参数重新组合成一个新维度的tensor
a = torch.Tensor([[[1,2,3],[4,5,6]]])
b = torch.Tensor([1,2,3,4,5,6])
print(a.view())
print(b.view())
# 得到的结果都是
tensor([[1.,2.,3.,4.,5.,6.]])
在举一个例子
a = torch.Tensor([[[1,2,3],[4,5,6]]])
print(a.view(3,2))
#将会得到
tensor([[1.,2.],
[3.,4.],
[5.,6.]])