关于transform转变cv图片颜色不符的问题

学习pytorch过程中,发现当cv图片经过ToTensor后颜色发生变化,黄色会变成蓝色,蓝色会变成黄色

 

 这是由于cv2.imread读取图片的时候,是通过BGR形式读取图片,而ToTensor默认以RGB模式,这样转变后会导致颜色完全相反。

正确做法应当是将imread之后的图片修改成RGB模式:

img=cv2.imread(img_path)
img_rgb=cv2.cvtColor(img,cv2.COLOR_BGR2RGB)#格式转换,
writer = SummaryWriter("logs")

tensor_trans=transforms.ToTensor()
tensor_img=tensor_trans(img_rgb)

writer.add_image("bee", tensor_img,3,dataformats="CHW")

 这样最后得到的图片颜色就是正常的

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值