opencv imread读取alpha通道

本文介绍如何使用OpenCV的Python接口为不包含Alpha通道的JPEG图片添加Alpha通道。通过自定义函数`__addAlpha`,可以为读取的图片添加一个全透明的Alpha通道,并调整图片尺寸。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


在使用opencv的python接口读取jpg,相对jpg图片透明处理时,需要处理其alpha通道

可以用时imread接口

origin_image = cv2.imread(image_path, cv2.CV_LOAD_IMAGE_UNCHANGED)

而imread的第二个参数flag代表的是是否读取alpha通道


但是有个一问题是jpg不存在alpha通道,这样后续操作会出现问题,解决办法的给读取出来的数组增加一个alpha的维度

origin_image = cv2.imread(image_path, cv2.CV_LOAD_IMAGE_UNCHANGED)
        if origin_image.ndim != 4:
            origin_image2 = self.__addAlpha(origin_image) #添加alpha
            origin_image2.resize((90,260,4))

记住需要对矩阵重写resize一次

    #读取jpg,添加alpha通道
    def __addAlpha(self, image):
        temp_image = []
        for i in xrange(image.shape[0]):
            for j in xrange(image.shape[1]):
                    temp = np.append(image[i][j], 255)
                    temp_image.append(temp)
        return np.array(temp_image)

这样就可以为读取出来的图片举证增加一个维度,也就是alpha通道的维度



评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值