Ruby on rails RMagick-调整亮度?
有人知道如何使用RMagick调整图像的亮度吗?Rmagick有许多不同的功能可用,包括调整色相/亮度/饱和度级别和色相/亮度/饱和度级别,但我需要调整老式的亮度/对比度级别 有一些自定义函数可以让我单独调整每个颜色通道(RGBA),但我不知道如何使用级别来调整整体亮度。混用不同的通道会产生颜色变化的图像。在GIMP的“级别”菜单中,我想要的功能位于“输出级别”下。通过将其拖动到255以下,我可以实现“变暗”效果。RMagick中是否有某种等价物来控制输出水平?我看不到它的频道 示例: 这是原始图像: 这就是我想要的: 这就是我调整亮度时发生的情况(Rmagick的调制)Ruby on rails RMagick-调整亮度?,ruby-on-rails,ruby,imagemagick,rmagick,Ruby On Rails,Ruby,Imagemagick,Rmagick,有人知道如何使用RMagick调整图像的亮度吗?Rmagick有许多不同的功能可用,包括调整色相/亮度/饱和度级别和色相/亮度/饱和度级别,但我需要调整老式的亮度/对比度级别 有一些自定义函数可以让我单独调整每个颜色通道(RGBA),但我不知道如何使用级别来调整整体亮度。混用不同的通道会产生颜色变化的图像。在GIMP的“级别”菜单中,我想要的功能位于“输出级别”下。通过将其拖动到255以下,我可以实现“变暗”效果。RMagick中是否有某种等价物来控制输出水平?我看不到它的频道 示例: 这是原始
我认为您可以使用
调制方法:
因此,要将亮度提高50%,大致如下:
img.modulate(1.5)
我认为您可以使用调制方法:
因此,要将亮度提高50%,大致如下:
img.modulate(1.5)
我认为这应该满足你的需要
img = Magick::Image.read('bT9xc.png')
img.first.level(-Magick::QuantumRange * 0.25, Magick::QuantumRange * 1.25, 1.0).write('out.png')
这将使黑点和白点距离图像中的范围“更远”,从而使源图像中最亮的白色变暗,而源图像中最暗的黑色变亮
如果您想使整体颜色更暗,只需将第二个因子增加到Magick::QuantumRange*1.5
或更高。我认为这应该满足您的需要
img = Magick::Image.read('bT9xc.png')
img.first.level(-Magick::QuantumRange * 0.25, Magick::QuantumRange * 1.25, 1.0).write('out.png')
这将使黑点和白点距离图像中的范围“更远”,从而使源图像中最亮的白色变暗,而源图像中最暗的黑色变亮
如果您想使其整体颜色更暗,只需将第二个因子增加到Magick::QuantumRange*1.5
或更高。好——因此增加HSL亮度是不够的,您需要同时增加对比度和亮度,本质上是这样的。RMagick::Image类有一个级别
函数,您可以在其中指定一个范围,该范围应该正是您所需要的。如果我在电脑前,我会给你一个小例子:)(如果你还没有得到你需要的东西,我会稍后再试)谢谢你——我一直在玩弄RMagick的level和level_通道功能,但当我调整中间音时,它会不断将我的白色变成黄色。我真的想把它变成灰色(?),有点像当你在一个普通的蹩脚的照片编辑器中调低照片的亮度。嘿,你可能想用你想要实现的那种变换来显示同一张图像的“之前”和“之后”。(我不完全清楚你想要什么。)为澄清而添加的图像——谢谢你的建议。好吧——所以增加HSL亮度是不够的,你需要同时增加对比度和亮度,基本上。RMagick::Image类有一个级别
函数,您可以在其中指定一个范围,该范围应该正是您所需要的。如果我在电脑前,我会给你一个小例子:)(如果你还没有得到你需要的东西,我会稍后再试)谢谢你——我一直在玩弄RMagick的level和level_通道功能,但当我调整中间音时,它会不断将我的白色变成黄色。我真的想把它变成灰色(?),有点像当你在一个普通的蹩脚的照片编辑器中调低照片的亮度。嘿,你可能想用你想要实现的那种变换来显示同一张图像的“之前”和“之后”。(我不完全清楚你想要什么。)为澄清而添加的图像——谢谢你的建议。调制改变亮度(色调、饱和度、亮度),这与亮度不同。。。它扭曲了颜色。我刚从我链接的文档中走出来,上面说“改变亮度、饱和度和色调”。它们也提供了一个例子。不管怎样,我不确定你所说的亮度和亮度有什么不同。亮度和亮度的区别在原始问题中加上了图片。谢谢调制改变亮度(色调,饱和度,亮度),这是不同于亮度。。。它扭曲了颜色。我刚从我链接的文档中走出来,上面说“改变亮度、饱和度和色调”。它们也提供了一个例子。不管怎样,我不确定你所说的亮度和亮度有什么不同。亮度和亮度的区别在原始问题中加上了图片。谢谢嘿@struthersneil你有MiniMagick的等价物吗?什么是Magick::QuantumRange
?嘿@struthersneil,你有MiniMagick的等价物吗?什么是Magick::QuantumRange
?