关于使用CV2读取图片并用tensorboardX显示图片时,图片发蓝的原因

关于使用CV2读取图片并用tensorboardX显示图片时,图片发蓝的原因:

CV2使用以下函数读取图片:

img = cv2.imread("xx.jpg")

读取图片的格式为 B,G,R格式,

而tensorboardX显示图片是使用plt显示图片,其需要读取的图片格式应该是

R, G,B格式。

因此,如果直接将cv2.imread读取的图片数据送去显示,就会导致显示的图片偏蓝,如下所示:
关于使用CV2读取图片并用tensorboardX显示图片时,图片发蓝的原因_第1张图片
为了使图片正常显示,需要将BGR格式的通道转换为RGB格式的通道,可以使用如下代码语句:

 b,g,r = cv2.split(image_show) 
 image_show = cv2.merge([r,g,b])

然后再将 image_show 图片数据送入tensorboradX显示。
关于使用CV2读取图片并用tensorboardX显示图片时,图片发蓝的原因_第2张图片

你可能感兴趣的:(关于使用CV2读取图片并用tensorboardX显示图片时,图片发蓝的原因)