图像处理——读取为numpy,并且与tensor互相转换

12 篇文章 0 订阅
10 篇文章 0 订阅

图像处理——读取为numpy,并且与tensor互相转换

将图像读取为numpy

import cv2 as cv
#其中image_file为图像路径
im = cv.imread(image_file)
#opencv读取的图像是BGR,需要转为RGB
im = cv.cvtColor(im, cv.COLOR_BGR2RGB)

将numpy格式图像转换为tensor

im = numpy_to_torch(im)

此时,im.shape = torch.Size([1, 3, 356, 473])

将tensor格式图像转换为numpy

# 去掉tensor的第一个维度,降维
new_im = im[0]
# new_im.shape为torch.Size([3, 356, 473])
# 调整维度顺序
new_im = new_im.permute(1, 2, 0)
# new_im.shape为torch.Size([356, 473, 3])
# 此时图像可以用于显示
import matplotlib.pyplot as plt
# /255进行归一化,避免出现Clipping input data to the valid range for imshow with RGB data ([0..1] for floats or [0..255] for integers).错误
plt.imshow(new_im/255)
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值