关于transforms.toTensor()转换的问题 对应灰度图和RGB图均可转换 且自动加一个维度

target1 = imread(r"D:\pku\new desktop\dataset-DIV2k\Set14\bridge.bmp")
target2 = Image.open(r"D:\pku\new desktop\dataset-DIV2k\Set14\bridge.bmp")
print('yes')
mm = target1/255.0
nn = torch.ones([2,2])
nn_new = nn.float()

trans = transforms.ToTensor()
target1_tensor = trans(target1)
target2_tensor = trans(target2)
print('yes')
#如果输入三通道 输出则转换位CHW的[0.0 1.0]的float tensor
#重点 如果输入的是灰度图 输出的仍然会是三通道的 源码中 如果检测到图片是二维的 会自动加一个维度
dudu1 = np.ones([2,2])
dudu2 = dudu1[:,:,None]#加一个维度
print(dudu1.size)
print(dudu2.size)

#源码的话参照下面的图片

如下图所示:我们读入的为uint8数据,因此我们可以进行直接的转换

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值