关于计算机图形学,“通道”一词是什么意思?


16

我当时正在研究计算机图形学的术语,而这种说法使我感到困惑。

图像可以具有透明度的Alpha通道。

我尝试搜索“ alpha通道”一词的含义,但是我对使用另一个概念称为“通道”的定义感到困惑。我不太确定这是什么意思,所以有人可以请我解释这个名词吗?

Answers:


40

数字颜色可以由三个部分组成:红色,绿色和蓝色。将它们组合在一起,就可以得到最终的颜色,例如。黄色是100%红色,100%绿色和0%蓝色。

正如您提到的,第四部分是透明度。这些共同构成了RGBA代表图像的元组(红色,绿色,蓝色,alpha)。

现在,代替像素,换一种方式思考:如果将图像分成四层怎么办?您可以像这样将它们分开:

  • 一层上的所有红色像素
  • 一层上的所有绿色像素
  • 一层上的所有蓝色像素
  • 表示一层透明性的值

这些层实际上称为“通道”。它们是示例图像中的外观:

在此处输入图片说明

在此图像中,您只能看到红色通道上的红色像素。同样适用于绿色和蓝色。这就是全部-一种将图像视为组合在一起的单独颜色的“通道”的方式。


3
很好的答案,感谢您提供的信息。我喜欢您使用图像来解释这一概念的方式。
Stync

1
您可能还需要提及其他颜色系统,因为添加的颜色不是唯一使用的一种
jcora 2014年

4
那些单通道图像不应该具有从零值(黑色)到全值(例如红色)的值,而不是如图所示的黑色->红色->白色(例如)的值吗?(这样的事情:f.cl.ly/items/2Q2C1z2s331f1T1U341G/images.png
Slipp D. Thompson

1
@ SlippD.Thompson是正确的。在RGB中,白色是通过使每个颜色通道具有完整的强度而制成的,这意味着ashes999的图像在规则上有些松散。
Alex 2014年

4
我选择这张照片是因为它是说明性的。OP似乎对该概念感到困惑。简单地解释这个概念似乎比找到确切的图像更重要。从技术上讲,它应该是四个灰度层(这就是我最初的图像),但这更加令人困惑。
ashes999

6

该术语来自“通道”的定义,它表示频谱的特定部分。在这种情况下,一种颜色的红色,绿色和蓝色分量通常称为“通道”(因为红色,绿色和蓝色光是可见光谱的一部分)。

由于alpha是计算机图形学中颜色的另一组成部分(尽管与其他可见光并不完全相关),因此它也称为通道。


4

Alpha通道实际上是由乔治·卢卡斯(George Lucas)的公司Industrial Light&Magic发明的(实际上Alvy Ray Smith在那儿工作时完成了大部分工作,他以前是Xerox PARC雇用的,我们几乎要感谢现代计算中的一切!)。

Alpha通道除了可以执行诸如透明窗口,透明渐变和逼真的阴影之类的炫酷效果外,还可以用于子像素操作。实际上,最初的用途是因为当时的计算机图形很烂。为了将抗锯齿的图像叠加到不同的背景(或实时电影的背景)上,您最终会出现块状边缘。这对于电影而言是行不通的,并且尝试对背景进行图像抗锯齿会占用过多的CPU时间。所以..图像的边缘变成半透明的(alpha通道)。这样可以使背景以不同的密度显示-将两个图像的颜色混合在一起以消除锯齿。如今,这种方式在任何地方都可以使用,例如,绘制的图标边缘比平常所允许的分辨率平滑得多,而您却不会

Alpha通道很容易在硬件中完成。早期的电影制作机器有一个“同步锁相”位(在Amiga和一些Atari机器上也有),它基本上是一个输出引脚,从计算机输出切换到视频输出。该引脚由输出中的“透明”位驱动(通常使用“ hicolor”图形模式,对于RGB为5:5:5,对于透明度为1位= 16位/像素),这使得可以轻松地将计算机生成的上下文覆盖在实时环境中视频而不将其数字化。后来将其修改为具有8位DAC的模拟输出-因此,与其在计算机和实时视频之间切换,不如将其混合在一起,从而消除了1位技术使用的令人讨厌的块状边缘。模拟抗锯齿!

现代视频卡可以一次在内存中存储多层信息,并使用alpha层在硬件中混合多层alpha透明度。这使您的“精灵”和其他需要进行抗锯齿的对象看起来不错。抗混叠使用Alpha通道动态混合,而不是混合成固定的背景色。当然,您可以使用Alpha通道执行各种操作,但是我希望这可以为您提供一个开始。有关更多历史记录,请尝试维基百科。


您能否提供IL / M发明AC的任何参考/引用?

Alvy自己在他的博客上有一个很好的概述,网址为alvyray.com/awards/AwardsAcademy96.htm。这表明它是由Alvy Ray和Ed Catmull在NYIT时发明的。双方后来都成立了皮克斯。
mvl 2014年

我忘记了最初阅读它的位置,但维基百科提到了它
Evan Langlois 2014年

3

但是,没有其他示例可以解释为什么使用alpha。它来自Alpha Compositing中的表达式:

在此处输入图片说明

其中Ca和Cb是两个输入颜色值,Co是输出组合颜色。

在0和1之间改变alpha值可以改变前后合成图像之间的颜色。

(据我所知,图像处理也具有“伽玛”,但没有“ beta”)


2

所有图像都有1个或多个“通道”的信息。例如,熟悉的RGB图像类型具有3个信息通道:红色,绿色和蓝色。也就是说,图像中的每个像素都有3个与之关联的数字(如果每个数字均为8位,则为24位图像)。

Alpha可以添加第四条信息通道(因此,与每个像素相关联的第四条数字和32位图像)。这个额外的渠道可用于多种目的,但最常见的目的是透明度。

具有Alpha通道的常见文件格式为PNG和TGA。


2

在许多图像格式中,像素定义为具有4个分量的向量。RGB和Alpha。从整个图像的角度来看,您只能选择像素的每个分量,这提供了一系列值。如果只想处理一个分量,则可以选择图像中所有像素的分量,这通常称为channel。所有像素的一个分量的集合。然后alpha通道表示alpha分量的集合。类似地,每个RGB分量的集合可以称为红色通道,绿色通道和蓝色通道。


2

像素是组件的集合。传统上,这些组件是红色,绿色和蓝色,每个组件都占用8位数据。

由于使内存按某些方式对齐通常是有利的,因此有时将这些方式打包成32位空间。这在每个像素的末尾留下了8位额外数据。由于它既不是红色,也不是绿色或蓝色,因此需要一个名称-而alpha是一个相对没有意义的名称。

现在,当您将一个像素阵列排列成一个矩形时,您将得到:

   RGBARGBARGBARGBA
   RGBARGBARGBARGBA
   RGBARGBARGBARGBA
   RGBARGBARGBARGBA

有时您只想谈论上述一种颜色,例如红色:

   R***R***R***R***
   R***R***R***R***
   R***R***R***R***
   R***R***R***R***

每个像素分量仅一个元素的这种子选择在图像中称为“通道”。由于像素具有4个分量,因此此图像具有4个通道。

还有其他没有Alpha通道的图像格式:

   RGBRGBRGBRGB
   RGBRGBRGBRGB
   RGBRGBRGBRGB
   RGBRGBRGBRGB

并且有些格式的每个像素分量的位数不同(3、5、8、16、32),有些格式的每个像素分量的位数不一致。

该通道成为仅一个像素分量的“虚拟”阵列。(我说是虚拟的,因为每个元素之间都有跨度,而传统上数组没有这种跨度)

RGB部分也没有固定-您可以使用带有或不带有alpha通道的灰度图像,可以使用CMYK图像(青色洋红色黄blacK,通常在减色空间中),可以使用具有由镜面射线追踪器或科学仪器创建的各种颜色通道。

尽管我将像素视为始终是连续的,但也可以将通道分成多个位置,如下所示:

    RRRRGGGGBBBBAAAA
    RRRRGGGGBBBBAAAA
    RRRRGGGGBBBBAAAA
    RRRRGGGGBBBBAAAA

甚至

    RRRR
    RRRR
    RRRR
    RRRR
    GGGG
    GGGG
    GGGG
    GGGG
    BBBB
    BBBB
    BBBB
    BBBB
    AAAA
    AAAA
    AAAA
    AAAA

或者将RGB打包,并将A存储在单独的缓冲区中。

这在游戏中的实时数据中并不常见,因为现代显卡通常是围绕RGBA像素设计的。可以统一处理RGB,并且可以使用A进行快速计算,从而可以在RGB像素上绘制预先绘制的背景。

alpha通道通常用于透明度信息。令人讨厌的是,不同的代码库有时将alpha的最大值视为透明的,而有时则视为不透明的。如今这种情况再少见了。Alpha通道也已用于z缓冲区排序(像素距查看器的距离)以允许无序绘制到场景,并且传统上,通过将2x 2x(或少4x像素)的低分辨率图像推入到像素中来完成mip映射。递归地显示高分辨率图像的Alpha通道。

即使在使用RGBA像素的系统中,这些像素的含义也可能不一致。R是否测量一个人看到多少红色,或者应该发射多少红色光子?这是线性和非线性色彩空间之间的差异,它影响使用透明通道合成所述像素的正确方法。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.