⚠️ 这是一个非官方翻译网站,与 ImageMagick Studio LLC 无关。准确信息请参阅原文(https://imagemagick.org/motion-picture/)

电影数字图像(DPX)

对数格式 • DPX 属性 • DPX 设置

DPX(SMPTE 268M-2003)— 这种格式用于电影与视觉特效行业,它充分利用了丰富的头部信息,以及该格式在使用 RGB 或 YCbCr 像素描述时,能够以多种位深度处理高动态范围和对数色彩值的灵活性。它基于 Kodak 的 Cineon 格式(该格式具有更偏向胶片的专用头部),但在很大程度上取代了它。

它的一个使用示例是为后期制作扫描胶片。每一帧都存储为单独的 DPX 文件,尺寸从 2k(宽 2048 像素)到 8k(宽 8192 像素 — 用于 IMAX 画面),每个色彩分量的位深度在 8 到 64 位之间。随后可以使用合成软件处理这一系列文件,改变色彩或添加视觉特效。完成后,可以将它们数字化记录到磁带上,或重新投影回胶片上。

每个像素的色彩值通常以对数方式存储(尤其是当该序列将被转回胶片时),这更自然地反映了色彩信息在原始胶片乳剂中存储的密度。在未经处理的情况下查看时,对数文件看起来对比度非常低,需要一个“查找表”将对数图像转换为接近于将图像转回胶片并在影院投影时所看到的效果。除了使图像线性化(如大多数典型计算机图像那样)并调整伽马级别之外,这个表还设定黑点和白点所在的位置。

对于一幅 10 位对数图像,其每个色彩分量值的范围是 0 到 1023,黑点和白点通常分别设为黑色 95、白色 685。这意味着对数文件所存储的色彩值,既有比线性版本显示为纯白时更亮的值,也有比其显示为纯黑时更暗的值。因此,对于希望在图像存储为 DPX 文件后再调整其亮度的特效艺术家来说,这些额外信息仍然可用。

举例来说,如果这些信息丢失了,那么均匀地降低图像亮度会导致高光变暗;而有了这些额外信息,高光反而会缩小范围,并开始显示出此前因过亮而无法看到的细节。后者远比前者更接近现实世界中所发生的情况。

头部可以包含与制作相关的电影和/或电视专用数据。例如,电视头部可以包含 SMPTE 时间码,这样从制作的剪辑中以 DPX 序列导出的镜头,在添加特效后就可以轻松替换。电影头部保存有关这些帧所源自的胶片卷的信息,以及拍摄时所使用的各种相机设置。这些细节通常会在图像于各后期制作公司之间传递时一直随图像保留。

对数格式

每个像素的色彩值通常以对数方式存储(尤其是当该序列将被转回胶片时),这更自然地反映了色彩信息在原始胶片乳剂中存储的密度。在未经处理的情况下查看时,对数文件看起来对比度非常低(最左侧图像),因此需要一个“查找表”将对数图像转换为接近于将图像转回胶片并在影院投影时所看到的效果(最右侧图像)。除了使图像线性化(如大多数典型计算机图像那样)并调整伽马级别之外,这个表还设定黑点和白点所在的位置。

bluebells-log bluebells-linear

对于一幅 10 位对数图像,其每个色彩分量值的范围是 0 到 1023,黑点和白点通常分别设为黑色 95、白色 685。这意味着对数文件所存储的色彩值,既有比线性版本显示为纯白时更亮的值,也有比其显示为纯黑时更暗的值。因此,对于希望在图像存储为 DPX 文件后再调整其亮度的特效艺术家来说,这些额外信息仍然可用。

举例来说,如果这些信息丢失了,那么均匀地降低线性图像的亮度会导致高光变暗(最左侧图像);而有了这些额外信息,高光反而会缩小范围,并开始显示出此前因过亮而无法看到的细节(最右侧图像)。后者远比前者更接近现实世界中所发生的情况。

bluebells-clipped bluebells-darker

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