【图形理论】图像格式怎么选我们谈谈文件格式、通道和色深

VFX大学 Nuke合成影视制作 【图形理论】图像格式怎么选我们谈谈文件格式、通道和色深

正在查看 3 条回复
  • 作者
    帖子
    • #31045

      韩十七
      参与者
      青骑士

      V友们下午好,我是十七。当我们选择正确的文件格式时,大多趋向于 .jpg 或 .tga,因为我们已经使用了很多年了;或者除了这些图形格式,我们根本不知道其他的格式是怎么回事。今天十七就来为大家揭开文件格式的神秘面纱,通过4个方面深入了解文件格式:类型、通道数、色深和压缩。

      2D 文件格式

      2D 文件格式只携带 2D 图像数据和元数据,没有 3D 信息。

      下面是视效工业常用的 2D 文件格式:

      .avi(音频视频交错格式) .psd(Adobe Photoshop 文档)
      .cin(柯达 Cineon 位图) .mov(QuickTime)
      .dpx(数字图像交换格式) .r3d(Red 编码 Raw 格式)
      .dtex(深度纹理贴图) .sgi(Silicon Graphics 图像格式)
      .exr(openEXR) .ptex(每面纹理贴图,Per-Face Texture Map)
      .hdr(高动态范围图像) .tif(标记图像文件格式)
      .jpg(联合图像专家组) .tga(Truevision Targa Graphics)
      .iff(交换文件格式) .rla(Wavefront RLA)
      .png(便携式网络图形)
    • #31047

      韩十七
      参与者
      青骑士

      2D 色深

      谈到色深,有一种旧的认识,会让大家混淆。下面是 2014 Autodesk 3dsMax 参考手册中的截图。注意左边的词:24 或 32 位,这里是假设 24 位是 RGB,而 32 位是 RGB+Alpha。

      这种想法就是:8 位(每个通道256种颜色) + 8 位 + 8 位 = 24 位;当我们再添加一个 Alpha 的 8 位时,就得到了 32 位。听起来好像是那么回事,但这是错误❌的!

      正确的位深应该是这样的:

      1 bit(整型) 2 种色彩/通道 8 种色彩
      2 bit(整型) 4 种色彩/通道 64 种色彩
      4 bit(整型) 16 种色彩/通道 4098 种色彩
      8 bit(整型) 256 种色彩/通道 16777216 种色彩
      10 bit(整型) 1024 种色彩/通道 1073741824 种色彩
      16 bit(整型) 65536 种色彩/通道 281474976710656 种色彩
      32 bit(整型) 4294967296 种色彩/通道 7.92281625142643*1028 种色彩

      那么,哪些文件格式支持哪种位深呢?

      8 bit 10 bit 16 bit 32 bit
      .bmp(整型) .cin(浮点型) .cin(浮点型) .exr(浮点型)
      .jpg(整型) .dpx(浮点型) .dpx(浮点型) .hdr(浮点型)
      .png(整型) .exr(浮点型) .psd(浮点型)
      .rla(整型) .iff(浮点型) .rla(浮点型)
      .sgi(整型) .psd(浮点型) .tif(浮点型)
      .tif(整型) .png(浮点型) .dtex(浮点型)
      .tga(整型) .rla(浮点型) .ptex(浮点型)
      .yuv(整型) .sgi(浮点型)
      .tif(浮点型)
    • #31048

      韩十七
      参与者
      青骑士

      浮点型(Float) vs. 整型(Integer)

      有些文件格式既可以支持整型,也可以支持浮点型(或 Log),当然,同一个文件两者只能选其一。拿 16 位来说,两种格式都可以携带同样数量的色彩,但是浮点型可以改变数据的范围(支持 HDR),而整型只支持 0~1 之间的值。

      在计算机中,浮点表述了一种表示实数的方法,支持宽范围的值。一般来说,数字由有效数字和指数表示,指数的底数通常为 2、10 或 16。表示格式如下:

      有效数字 × 底数指数

      这是我们常用的科学计数法。

      浮点指的是小数点(可以是十进制小数点,在计算机中更常见的是二进制小数点)可以“浮动”。也就是说,它可以放在有效数字的任何地方,它的位置在数字内部是单独表示的。因此,浮点表示法可以看作是计算机的科学计数法。多年来,计算机中使用了多种多样的浮点表示法。不过,从上世纪90年代以来,最常见的表示法是由 IEEE 754 标准定义的。

      浮点表示法相对于定点和整型表示法的优点在于它可以支持更广泛的值范围。比如说,一个定点表示法有7位十进制数字,包括两位小数(定点表示法中小数点的位置是不变的,所以小数的位数是确定的),那么它可以表示数字 12345.67、123.45、1.23 等等;但是对浮点表示法来说,同样有7位十进制数字,它就可以表示为 1.234567、123456.7、0.00001234567、1234567000000000,等等。浮点格式需要的存储空间稍稍多一点(因为要编码小数点的位置)。所以当存储空间相同时,浮点数会以牺牲精度为代价,得到更大的表示范围。

      浮点运算的速度,通常作为性能测量的标准,称为 FLOPS,是一个重要的机器特性,尤其是在执行大规模数学计算的软件中。

    • #31049

      韩十七
      参与者
      青骑士

       通道

      说完文件格式支持的色彩数量后,我们再来说说它们可以携带的通道数。比如 .jpg 只支持 RGB,所以有3个通道;.tga 可以支持 RGB 和 Alpha,所以可以携带4个通道的数据。

      下面的列表大家可以参考下:

      3 通道 4 通道 6 通道 18 通道 500 通道 1023 通道
      .avi .dpx .ptex .rla .psd .exr
      .cin .mov .tif
      .hdr .pic
      .jpg .png
      .ptex
      .tga

      ——————

      3D 文件格式

      最后我们说说 3D 可交换文件格式,种类比 2D 文件格式要少很多。每种 3D 程序都有自己的文件格式,但是在不同的应用之间移动数据,需要可以在多个系统上读取的格式。下面是一些可交换的 3D 文件格式:

      文件类型 文件扩展名 支持几何体 支持 UV 支持摄像机 支持灯光 支持定位器(Locator)
      CHAN .chan
      Wavefront .obj
      FBX .fbx
      Alembic .abc
正在查看 3 条回复
  • 在下方一键注册,登录后就可以回复啦。
error: 提示:内容受到保护!!
-->