Python 相当于GIMP'的枕头;s的亮度对比对话?

Python 相当于GIMP'的枕头;s的亮度对比对话?,python,python-3.x,python-imaging-library,Python,Python 3.x,Python Imaging Library,如何调整图像的对比度和亮度以匹配GIMP的颜色亮度对比度对话 亮度为-110,对比度为127是我想要达到的 我从以下位置找到此函数: 此函数将再现与我想要的值的对比度,但我找不到亮度的等效值 我知道存在ImageEnhance模块,但该模块有一个无界浮点作为参数,如何将我在gimp中使用的值转换为这种格式?或者是否有其他解决方案可以将这些值插入。文档没有解释此参数如何工作 from PIL import Image, ImageEnhance img = Image.open(path) e

如何调整图像的对比度和亮度以匹配GIMP的
颜色
亮度对比度
对话

亮度为-110,对比度为127是我想要达到的

我从以下位置找到此函数:

此函数将再现与我想要的值的对比度,但我找不到亮度的等效值

我知道存在
ImageEnhance
模块,但该模块有一个无界浮点作为参数,如何将我在gimp中使用的值转换为这种格式?或者是否有其他解决方案可以将这些值插入。文档没有解释此参数如何工作

from PIL import Image, ImageEnhance

img = Image.open(path)
enhancer = ImageEnhance.Brightness(img)
img = enhancer.enhance(0.2)
enhancer = ImageEnhance.Contrast(img)
img = enhancer.enhance(2.0)
文件解释说:

此类可用于控制图像的亮度。一 增强因子为0.0时会显示黑色图像。系数为1.0表示 原始图像

要精确匹配GIMP中的行为,可以将0.0到1.0的范围映射到GIMP范围,例如使用 找到的代码:

或者使用SciPy插值函数的好解决方案:

文件解释说:

此类可用于控制图像的亮度。一 增强因子为0.0时会显示黑色图像。系数为1.0表示 原始图像

要精确匹配GIMP中的行为,可以将0.0到1.0的范围映射到GIMP范围,例如使用 找到的代码:

或者使用SciPy插值函数的好解决方案:


您知道如何使亮度和对比度显示为那样的整数吗?我的显示为小于1的小十进制数。尝试从25..230创建灰度渐变,并应用亮度和对比度,以便查看文件和直方图是如何受到影响的。您知道如何使亮度和对比度显示为那样的整数吗?我的显示为小于1的小十进制数。试着从25..230创建一个灰度梯度,然后应用你的亮度和对比度,这样你就可以看到文件和直方图是如何受到影响的。
from PIL import Image, ImageEnhance

img = Image.open(path)
enhancer = ImageEnhance.Brightness(img)
img = enhancer.enhance(0.2)
enhancer = ImageEnhance.Contrast(img)
img = enhancer.enhance(2.0)
def maprange( a, b, s):
    (a1, a2), (b1, b2) = a, b
    return  b1 + ((s - a1) * (b2 - b1) / (a2 - a1))
from scipy.interpolate import interp1d
m = interp1d([gimp_lower, gimp_upper],[0.0, 1.0])
print(m(50))