python opencv 為圖片添加alpha通道並設置透明,判斷是否存在alpha通道


 讀取圖片
使用函數cv2.imread(filepath,flags)讀入一副圖片
filepath:要讀入圖片的完整路徑
flags:讀入圖片的標志
cv2.IMREAD_COLOR:默認參數,讀入一副彩色圖片,忽略alpha通道
cv2.IMREAD_GRAYSCALE:讀入灰度圖片
cv2.IMREAD_UNCHANGED:顧名思義,讀入完整圖片,包括alpha通道

import numpy as np

import cv2

img = cv2.imread(‘1.jpg’,cv2.IMREAD_GRAYSCALE)

opencv 讀取圖片后通道為BGR的格式,這里做個示范將圖片的左半邊設置為透明效果。

import cv2
import numpy as np
 
img = cv2.imread("/home/shuai/Desktop/lena.jpg")
 
b_channel, g_channel, r_channel = cv2.split(img)
 
alpha_channel = np.ones(b_channel.shape, dtype=b_channel.dtype) * 255
# 最小值為0
alpha_channel[:, :int(b_channel.shape[0] / 2)] = 100
 
img_BGRA = cv2.merge((b_channel, g_channel, r_channel, alpha_channel))
 
cv2.imwrite("lena.png", img_BGRA)

 

import cv2
import numpy as np
def get_channel():
    for fil in os.listdir(r'C:\Users\83815\Desktop\LR'):
        file=os.path.join(r'C:\Users\83815\Desktop\\LR',fil)
        img=cv2.imread(file,cv2.IMREAD_UNCHANGED)
        print(img.shape)

 

(120, 125, 3)輸出為3表示沒有alpha通道,如果是4表示有alpha通道

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM