【问题标题】:Image::Magick Composite() and Gimp layer overlay differenceImage::Magick Composite() 和 Gimp 图层叠加的区别
【发布时间】:2022-01-01 08:04:21
【问题描述】:

使用 perl 脚本覆盖一些图像

use Image::Magick;

my $under = Image::Magick->new;
$under->Read(filename => 'under.png');

my $over = Image::Magick->new;
$over->Read(filename => 'over.png');

$under->Composite(image => $over);

$under->Write(filename => 'both.png');

我看到上面的结果图像 (both.png) 和 gimp 图层叠加结果 (withgimp.png) 之间存在差异。谁能解释一下我该怎么做才能没有区别?

谢谢

under.png over.png both.png withgimp.png

both.png

withgimp.png

【问题讨论】:

  • 你的图片链接失效了......
  • 在 Gimp 中,“OVERLAY”是一种特定的混合模式,那么您是指 OVERLAY 还是 NORMAL?
  • "我看到上面的结果图像 (both.png) 和 gimp 层叠加结果之间存在差异":很难看出差异,请解释/显示在哪里区别是
  • 要查看图像之间的差异,您需要下载它们并在同一屏幕位置上一个接一个地显示,例如使用 gwenview(单图像模式)和箭头键。跨度>
  • 我对 OVERLAY 或 NORMAL 模式一无所知,我说的是“标准”gimp 图像,有两层,只能一层在另一层之上。

标签: perl layer composite gimp


【解决方案1】:

这是因为 Gimp 2.10 正在“线性光”中进行合成。

  • 8 位图像经过“伽马校正”,因此更多可用值 (0..255) 用于暗色调(中间灰色约为 180 而不是 127)。
  • Alpha 成分公式适用于非 Gamma 值,但经常与 Gamma 校正值一起被误用。我认为现在 IM 就是这种情况,就像 2.10 之前的 Gimp 就是这种情况。
  • 在 Gimp 2.10 中,默认情况下这是在移除伽马校正(也称为“线性光”)后完成的。

您可以通过使用“旧版”混合模式让 Gimp 使用“旧版”(和不正确的)方式。您可以使用图层混合模式选择器末尾的小选择器切换到传统混合模式。当您使用传统模式时,您会得到与 IM 相同的结果:

我不是 IM 专家,所以我无法告诉您如何要求 IM 正确行事。一个可能的技巧是将图像转换为无伽马浮点 TIFF。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-09
    • 2017-11-09
    • 1970-01-01
    相关资源
    最近更新 更多