RGBA与RGB和区别与转换

R:红色值。正整数 | 百分数

G:绿色值。正整数 | 百分数

B:蓝色值。正整数 | 百分数

A:Alpha透明度。取值0~1之间。(颜色的透明度)

此色彩模式与RGB相同,RGB定义了颜色的红绿蓝值,在RGB模式上新增了Alpha透明度.

alpha通道一般用作不透明度参数。如果一个像素的alpha通道数值为0%,那它就是完全透明的(也就是看不见的),而数值为100%则意味着一个完全不透明的像素(传统的数字图像)。在0%和100%之间的值则使得像素可以透过背景显示出来,就像透过玻璃(半透明性),这种效果是简单的二元透明性(透明或不透明)做不到的。它使数码合成变得容易。alpha通道值可以用百分比、整数或者像RGB参数那样用0到1的实数表示。


【RGB和RGBA之间的转换】也许对你有用

项目需要用到透明度,但UI给我的都是颜色,没有给关于透明度的色系,无奈之下,自己写了一个转换,希望对你有用

代码如下:

[html]  view plain  copy
 print ?
  1. function RGB2RGBA(rgb_color,alp){  
  2.     //注:rgb_color的格式为#FFFFFFF,alp为透明度  
  3.     var r = parseInt("0x" + rgb_color.substr(1,2));  
  4.     var g = parseInt("0x" + rgb_color.substr(3,2));  
  5.     var b = parseInt("0x" + rgb_color.substr(5,2));  
  6.     var a = alp;  
  7.     return "rgba(" + r + "," + g + "," + b + "," + a + ")";  
  8. }  
  9.   
  10. function RGBA2RGB(rgba_color){  
  11.     //注:rgba_color的格式为rgba(0,0,0,0.1)  
  12.     var BGcolur = 1;  
  13.     var arr = rgba_color.split("(")[1].split(")")[0].split(",");  
  14.     var a = arr[3];  
  15.     var r = BGcolur * (1 - a) + arr[0] * a;  
  16.     var g = BGcolur * (1 - a) + arr[1] * a;  
  17.     var b = BGcolur * (1 - a) + arr[2] * a;  
  18.     return "rgb(" + r + "," + g + "," + b +")";  
  19. }  








转载来自:http://blog.csdn.net/junjun56/article/details/45866591
alpha通道一般用作不透明度参数。如果一个像素的alpha通道数值为0%,那它就是完全透明的(也就是看不见的),而数值为100%则意味着一个完全不透明的像素(传统的数字图像)。在0%和100%之间的值则使得像素可以透过背景显示出来,就像透过玻璃(半透明性),这种效果是简单的二元透明性(透明或不透明)做不到的。它使数码合成变得容易。alpha通道值可以用百分比、整数或者像RGB参数那样用0到1的实数表示。
  • 5
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要将RGBA格式的图片转换RGB格式,可以使用以下方法: 1. 使用OpenCV库进行转换。首先,使用cv2.imread()函数读取图片,并设置参数为1以保持彩色图像。然后,使用cv2.cvtColor()函数将图像从BGRA色彩空间转换为BGR色彩空间。最后,使用cv2.imwrite()函数将转换后的图像保存为新的文件夹中的RGB格式图像。以下是示例代码: ```python import os import cv2 def convert_rgba_to_rgb(file_path, out_path): for filename in os.listdir(file_path): img = cv2.imread(file_path+'/'+filename, 1) rgb_img = cv2.cvtColor(img, cv2.COLOR_BGRA2BGR) cv2.imwrite(out_path + '/' + filename, rgb_img) file_path = "C:/Users/lenovo/Desktop/1" # 输入文件夹 os.mkdir("C:/Users/lenovo/Desktop/2") # 建立新的目录 out_path = "C:/Users/lenovo/Desktop/2" # 设置为新目录为输出文件夹 convert_rgba_to_rgb(file_path, out_path) ``` 2. 使用PIL库进行转换。首先,使用Image.open()函数打开图片。然后,使用convert()函数将图像转换RGB模式。最后,使用save()函数保存转换后的图像为新的文件夹中的RGB格式图像。以下是示例代码: ```python from PIL import Image def convert_rgba_to_rgb(work_path, work_path_new): count = 0 for i in range(21): im = Image.open(work_path + "\\" + str(count) + ".jpg") image = im.convert('RGB') image.save(work_path_new + "\\" + str(count) + ".jpg") count += 1 work_path = r'C:\Users\Administrator\Desktop\project\3' work_path_new = r"C:\Users\Administrator\Desktop\project\3_new" convert_rgba_to_rgb(work_path, work_path_new) ``` 以上两种方法都可以将RGBA格式的图片转换RGB格式,并保存在新的文件夹中。 #### 引用[.reference_title] - *1* [python图片RGBA转RGB](https://blog.csdn.net/SiuooooBoom/article/details/117236680)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [RGBA 转 RGB](https://blog.csdn.net/felix86/article/details/6679372)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [批量将RGBA图片转换RGB格式](https://blog.csdn.net/qq_44666320/article/details/126703551)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值