DPX (SMPTE 268M-2003) - 此格式用于电影和特效行业,该行业特别利用了扩展的标头信息以及该格式的灵活性,能够以多种位深度使用 RGB 或 YCbCr 像素描述来处理高动态范围和对数颜色值。它基于但很大程度上取代了柯达的 Cineon 格式,该格式具有更多针对电影的标头。
一个使用示例包括扫描电影以用于后期制作。每个帧都存储为一个单独的 DPX 文件,范围从 2k(2048 像素宽)到 8k(8192 像素宽 - 用于 IMAX 帧),每个颜色分量的位深度从 8 位到 64 位不等。然后可以使用合成软件处理这些帧的序列,改变颜色或添加视觉效果。完成后,它们可以被数字化地录制到磁带上或重新投影到胶片上。
每个像素的颜色值通常以对数方式存储(特别是如果序列注定要重新传输到胶片上),这更自然地反映了原始胶片乳剂中存储颜色信息的方式。在没有修改的情况下查看时,对数文件似乎具有非常低的对比度,因此需要一个“查找表”将对数图像转换为类似于将图像重新传输到胶片并在电影院中投影时看到的图像。除了使图像线性化(如大多数典型的计算机图像)并调整伽马级别外,该表还设置了黑点和白点的所在位置。
对于 10 位对数图像,其中每个颜色分量值范围从 0 到 1023,黑点和白点通常分别设置为 95 和 685。这意味着对数文件存储的颜色值比线性版本将显示为纯白色的颜色值更亮,并且比线性版本将显示为纯黑色的颜色值更暗。因此,这些额外的信息仍然可供特效艺术家使用,他们可能希望在图像存储为 DPX 文件后更改图像的亮度。
例如,如果这些信息丢失,均匀降低图像的亮度会导致高光变暗,而使用这些额外信息,高光反而会减小尺寸并开始显示以前太亮而无法看到的细节。后者更接近现实世界中发生的情况。
标头可以包含与制作相关的电影和/或电视特定数据。例如,电视标头可以包含 SMPTE 时间码,以便从制作的编辑中导出的 DPX 序列的镜头在添加任何效果后可以轻松地被替换。电影标头保存有关帧来源的胶片卷轴的信息以及拍摄过程中使用的各种相机设置。所有这些细节通常都与图像一起传递到后期制作公司。
日志格式
每个像素的颜色值通常以对数方式存储(特别是如果序列注定要重新传输到胶片上),这更自然地反映了原始胶片乳剂中存储颜色信息的方式。在没有修改的情况下查看时,对数文件似乎具有非常低的对比度(最左边的图像),因此需要一个“查找表”将对数图像转换为类似于将图像重新传输到胶片并在电影院中投影时看到的图像(最右边的图像)。除了使图像线性化(如大多数典型的计算机图像)并调整伽马级别外,该表还设置了黑点和白点的所在位置。
对于 10 位对数图像,其中每个颜色分量值范围从 0 到 1023,黑点和白点通常分别设置为 95 和 685。这意味着对数文件存储的颜色值比线性版本将显示为纯白色的颜色值更亮,并且比线性版本将显示为纯黑色的颜色值更暗。因此,这些额外的信息仍然可供特效艺术家使用,他们可能希望在图像存储为 DPX 文件后更改图像的亮度。
例如,如果这些信息丢失,均匀降低线性图像的亮度会导致高光变暗(最左边的图像),而使用这些额外信息,高光反而会减小尺寸并开始显示以前太亮而无法看到的细节(最右边的图像)。后者更接近现实世界中发生的情况。
DPX 属性
ImageMagick 支持以下 DPX 属性
dpx:file.copyright dpx:file.creator dpx:file.filename dpx:file.project dpx:file.version dpx:film.count dpx:film.format dpx:film.frame_id dpx:film.frame_position dpx:film.frame_rate dpx:film.held_count dpx:film.id dpx:film.offset dpx:film.prefix dpx:film.sequence_length dpx:film.shutter_angle dpx:film.slate dpx:film.type dpx:orientation.aspect_ratio dpx:orientation.border dpx:orientation.device dpx:orientation.filename dpx:orientation.serial dpx:orientation.x_center dpx:orientation.x_offset dpx:orientation.x_size dpx:orientation.y_center dpx:orientation.y_offset dpx:orientation.y_size dpx:television.black_gain dpx:television.black_level dpx:television.break_point dpx:television.field_number dpx:television.frame_rate dpx:television.gamma dpx:television.integration_times dpx:television.interlace dpx:television.padding dpx:television.time.code dpx:television.time_offset dpx:television.user.bits dpx:television.vertical_sample_rate dpx:television.video_signal dpx:television.white_level dpx:user.id dpx:user.data
查找任何用户数据作为 dpx:user-data 图像配置文件。
要确定哪些属性与您的 DPX 图像相关联,请使用此命令,例如
magick identify -verbose bluebells.dpx
要识别特定属性,请尝试以下操作
magick identify -format "%[dpx:television.time.code]" bluebells.dpx
最后,要设置属性
magick bluebells.dpx -define dpx:television.time.code=10:00:02:15 bluebells-001.dpx
DPX 设置
使用 -set 指定图像或胶片的伽马或黑点和白点。例如使用
-set gamma 1.7 -set film-gamma 0.6 -set reference-black 95 -set reference-white 685 -set profile dpx:user.data