RGB图像转RGBA图像
生活随笔
收集整理的這篇文章主要介紹了
RGB图像转RGBA图像
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
?
目錄
一 什么是RGBA圖像
二 RGB轉RGBA
一 什么是RGBA圖像
定義:RGBA是代表red(紅色)、green(綠色)、blue(藍色)和alpha的色彩空間,是在RGB顏色模型上增加了一個alpha通道
比如RGB圖像的shape為(450,548,3), 那么對應的RGBA圖像的shape為(450,548,4)
位深度:RBG為24位
? ? ? ? ? ? ??RGBA為32位
圖像格式:PNG是一種使用RGBA的圖像格式(RGBA圖像只能保存為PNG格式)
說明:如果一個像素的alpha通道數值為0,那它就是完全透明的(也就是看不見的),而數值為255則意味著一個完全不透明的像素(傳統的數字圖像)
RGBA圖像有什么作用:在計算機圖形學領域,alpha合成(英語:alpha compositing)是一種將圖像與背景結合的過程,結合后可以產生部分透明或全透明的視覺效果。 圖像語義分割最終得到的圖片就是RGBA圖片。
二 RGB轉RGBA
指定區域alpha為0,120,255的結果展示
import numpy as np import cv2 as cvdef create_RGBA(alpha):img_path = "4.jpg"image = cv.imread(img_path, cv.IMREAD_UNCHANGED)w, h, _ = image.shapealpha_channel = np.ones((w, h)) * 255w_alp, h_alp = 100, 100x, y = 250, 230alpha_channel[x:x+w_alp, y:y+h_alp] = np.ones((w_alp, h_alp)) * alphaimg = np.zeros((w, h, 4))img[:,:,0] = image[:, :, 0]img[:,:,1] = image[:, :, 1]img[:,:,2] = image[:, :, 2]img[:,:,3] = alpha_channelcv.imwrite("img120.png", img)def main():alpha = 120 # 0, 120, 255create_RGBA(alpha)if __name__== "__main__":main() alpha=0 alpha=120 alpha=255??????
?
總結
以上是生活随笔為你收集整理的RGB图像转RGBA图像的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Luzj's Zte 中兴认证客户端开放
- 下一篇: ES6中的for...in/of的使用