0

根据文档,我可以通过channels属性访问图像通道,但这给了我一个空列表。我怀疑只能通过此属性访问用户创建的频道。如何获取 R、G 和 B 通道的通道对象?

def python_myscript(img, drawable):
    print img.channels
>>> []

我需要这些渠道来应用级别。我想使用预设,但 python-fu 无法访问这些。这意味着我需要逐个通道应用级别更改,例如:

pdb.gimp_drawable_levels(layer, <CHANNEL NEEDED HERE>, ...)

我发现有通道常数。他们没有给我一个错误,但结果是“太白了”,我使用哪个常量似乎并不重要。

pdb.gimp_drawable_levels(layer, RED_CHANNEL, 0, 0.567, False, 1, 0, 1, False)
4

2 回答 2

1

根据文档,我可以通过 channels 属性访问图像通道,但这给了我一个空列表。

这实际上是显式创建/保存的频道列表(例如Select > Save to channel)。列表顶部的 R/G/B/A 通道有点虚拟,因为它们取决于层模式和可见性。

于 2021-09-25T06:45:47.403 回答
0

似乎通道常量不适合这种用法。我查看了程序浏览器,通道红色实际上映射到整数 1 (HISTOGRAM-RED)

所以要修改红色通道级别

pdb.gimp_drawable_levels(layer, 1, 0, 0.567, False, 1, 0, 1, False)

在此处输入图像描述

于 2021-09-24T04:13:52.753 回答