python将四通道图片转为三通道图片 您所在的位置:网站首页 imread函数格式 python将四通道图片转为三通道图片

python将四通道图片转为三通道图片

#python将四通道图片转为三通道图片| 来源: 网络整理| 查看: 265

问题:

        在做实验的时候,使用的数据集是tif格式的图片(png图片格式也可以是四通道),由于是四通道的图片在使用

plt.imshow(img)

时发现无法绘制出图片,因此试着输出图片的shape,才发现是四通道的图片。下面是使用的解决方法。

解决方法:

(1)使用cv2包

import cv2 img_path = "./data/1.tif" save_path = './data/2.png' # 其实使用的方法非常简单,就是使用cv2.imread()读取四通道图片 # 图片格式会自动转为三通道格式。 img = cv2.imread(img_path) # 再通过cv2.imwrite()直接保存,图片就保存为三通道 # 之后用其他方式再读取就是三通道格式 cv2.imwrite(save_dir, img)

(2)使用PIL包

from PIL import Image import matplotlib.pyplot as plt img_path = "./data/1.tif" save_path = './data/2.png' img = Image.open(img_path) img = img.convert("RGB") img.save(save_path)

        第一次使用这个方法的时候使用的保存方式为plt.imsave(save_path, img)发现保存的图片和一开始的图片变的不一样,可能是因为img的格式是,使用plt.imsave()保存的格式不正确。如果img是numpy的格式使用plt.imsave()就没有出现错误。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有