登录  
 加关注
查看详情
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

面包会有的

... ...

 
 
 

日志

 
 

Alpha通道的概念与功能  

2011-03-30 20:46:33|  分类: VC++ |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
    Alpha通道技术是非曲直图像合成的最基本技术,目前其应用多局限于多媒体课件作品开发中的个别环节,未能从整体上给予Alpha通道功能以足够的重视。如:对通用图像处理软件PHOTOSHOP中的Alpha通道及其运用有较深刻的理解,而疏忽了Alpha通道在动画、视频和多媒体集成工具中的应用。本文通过对Alpha通道的综合分析,以期使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通道技术是非曲直图像合成的最基本技术,目前其应用多局限于多媒体课件作品开发中的个别环节,未能从整体上给予Alpha通道功能以足够的重视。如:对通用图像处理软件PHOTOSHOP中的Alpha通道及其运用有较深刻的理解,而疏忽了Alpha通道在动画、视频和多媒体集成工具中的应用。本文通过对Alpha通道的综合分析,以期使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
        这就是两图像混合后的三原色分量。如果有多幅图像需要混合,则按照以上方法两幅两幅地进行混合。
  评论这张
 
阅读(2116)| 评论(0)

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018