图像处理的Alpha通道
一、Alpha通道的概念与功能
在计算机图形学中,一个RGB颜色模型的真彩图形,用由红、绿、蓝三个色彩信息通道合成的,每个通道用了8位色彩深度,共计24位,包含了所有彩色信息。为实现图形的透明效果,采取在图形文件的处理与存储中附加上另一个8位信息的方法,这个附加的代表图形中各个素点透明度的通道信息就被叫做Alpha通道。
Alpha通道使用8位二进制数,就可以表示256级灰度,即256级的透明度。白色(值为255)的Alpha像素用以定义不透明的彩色像素,而黑色(值为0)的Alpha通道像素用以定义透明像素,介于黑白之间的灰度(值为30-255)的Alpha像素用以定义不同程度的半透明像素。因而通过一个32位总线的图形卡来显示带Alpha通道的图形,就可能呈现出透明或半透明的视觉效果。
一个透明或半透明图形的数学模型应当如下:
为了便于下面的分析,设Alpha值[0,255]区间映射为[0,1]区间相对应的值表示,即Alpha值为0—1之间的数值。则图形文件中各个像素点可表示为:
Graphx(Redx,Greenx,Bulex,Alphax)
屏幕上相应像素点的显示值就转换为:
Dispx(Redx*Alphax,Greenx*Alphax,Bluex*Alphax)
Alpha通道不仅用于单个图形的透明或半透明显示,更重要的是在图像合成中被广泛运用。
下面是如何根据Alpha通道数据进行图像混合的算法:
事实上,我们把需要组合的颜色计算出不含Alpha分量的原始RGB分量然后相加便可。如:两幅图像分别为A和B,由这两幅图像组合而成的图像称为C,则可用如下四元组表示图A和B,三元组表示图像C:
A:(Ra,Ga,Ba,Alphaa)
B:(Rb,Gb,Bb,Alphab)
C:(Rc,Gc,Bc)
根据上述算法,则:
Rc=Ra*Alphaa+Rb*Alphab
Gc=Ga*Alphaa+Gb*Alphab
Bc=Ba*Alphaa+Bb*Alphab
这就是两图像混合后的三原色分量。如果有多幅图像需要混合,则按照以上方法两幅两幅地进行混合。
在图像处理中,Alpha用来衡量一个像素或图像的透明度。在非压缩的32位RGB图像中,每个像素是由四个部分组成:一个Alpha通道和三个颜色分量(R、G和B)。当Alpha值为0时,该像素是完全透明的,而当Alpha值为255时,则该像素是完全不透明。
Alpha混色是将源像素和背景像素的颜色进行混合,最终显示的颜色取决于其RGB颜色分量和Alpha值。它们之间的关系可用下列公式来表示:
显示颜色 = 源像素颜色 X alpha / 255 + 背景颜色 X (255 - alpha) / 255
图像处理的Alpha通道相关推荐
- java图像处理-(指定区域内)灰度化、透明化(alpha通道)处理
java图像处理-(指定区域内)灰度化.透明化(alpha通道)处理 2016年07月25日 21:23:16 阅读数:3944 近日在一家小公司实习,老板要求我写一个图形编辑器,其中涉及到用java ...
- 使用opencv中的merge()函数为BGR图像添加alpha通道
先上代码: #!/usr/bin/env python # -*- coding: utf-8 -*- # 图像处理开发需求.图像处理接私活挣零花钱,请加微信/QQ 2487872782 # 图像处理 ...
- 什么是Alpha通道
[该文转发自从] 我在我学习ps的过程中,对于alpha通道的理解总是不如意,指导后来看了这篇文章,才感觉畅快淋漓!那种感觉真是太棒啦,后来在知乎,发现关于此问题没有得到很好的解答,特此贴上该文,以享 ...
- DirectX11 Alpha通道
Alpha通道 1. 漫反射贴图控制Alpha通道 在RGB混合中,源alpha分量可以用来控制透明度.混合方程中的源颜色来自于像素着色器.我们会在最后一章中看到,我们将漫反射材质的alpha值作为像 ...
- (4)关于Alpha通道问题
其实,我还是不理解,我还是先把我目前懂得和觉得有用的东西先存下来 =================================================================== ...
- 关于Opengl中将24位BMP图片加入�一个alpha通道并实现透明的问题
#include <windows.h> #include <GL/glut.h> #include <GL/glaux.h> #include <stdio ...
- unity加载sprite_Unity 分离贴图 alpha 通道实践
引言 在做手机游戏时可能会遇到这些问题: UI 同学天天抱怨 iOS 上一些透明贴图压缩后模糊不堪 一些古早的 Android 手机上同样的贴图吃内存超过其他手机数倍,游戏经常闪退 这篇文章给出了一种 ...
- 【笔记】opencv的python实现·像素处理 像素访问 alpha通道
像素概念 计算机在处理某个图像时,会首先将其划分为一个个小方块,每个小方块是一个独立的处理单位,成为像素点 记录一些基础语法: ,X[:,0]就是取矩阵X的所有行的第0列的元素,X[:,1] 就是取所 ...
- Unity 分离贴图 alpha 通道实践
在做手机游戏时可能会遇到这些问题: UI 同学天天抱怨 iOS 上一些透明贴图压缩后模糊不堪 一些古早的 Android 手机上同样的贴图吃内存超过其他手机数倍,游戏经常闪退 这篇文章给出了一种手机游 ...
- 窗体的Alpha通道透明色支持
参考: http://www.delphibbs.com/delphibbs/dispq.asp?lid=2190768 Windows 2000后,为了支持类似MAC界面的Alpha通道混合效果,提 ...
最新文章
- Keras实现mode.fit和model.fit_generator比较
- LSGO软件技术团队2015~2016学年第十三周(1123~1129)总结
- android 按钮顶级效果_Android 源码之button高亮效果
- android 数据文件存储,实例详解Android文件存储数据方式
- Camera_Hal3_User_Manual
- 某一api全开源网站源码
- 阿里巴巴国际站新手运营攻略
- 黑盒测试中的因果图约束条件解释
- 约会Rendezvous
- 韩顺平python教程视频_尚硅谷_韩顺平_Linux_2018Linux基础入门教程全集
- ①变量、常量、数据类型解释 ②标识符命原则 ③sizeof使用原则 ④float型科学计数法 ⑤字符转换到ASCII表 ⑥\t 的使用意义【黑马程序员视频】
- Snapper:通过同义、分类关键词快速定位并调用WAV文件
- 什么是网关,网关的作用是什么
- Python绘制简单的曲线图·
- android+usb+摄像头+app+开源,Android 使用摄像头拍照
- 第 1 章 Logical Volume Manager (LVM)
- 程序员你12点前睡觉了吗?
- php源文件怎么打开,php文件怎么打开?
- patchwall 与鸿蒙对比,官方解读小米电视PatchWall智能电视系统设计的那些事儿
- 费孝通《乡土中国》阅读笔记—— 差序格局