【问题标题】:Remove image background移除图像背景
【发布时间】:2015-05-17 04:53:24
【问题描述】:

我正在尝试使用 Magick.Net 删除此图像的绿色背景,但我有点卡住了。

我尝试了以下方法:

var image = new MagickImage("test.jpg");
image.ColorFuzz = new Percentage(20);
image.TransparentChroma(new MagickColor("#0F562A"), new MagickColor("#43B788"));
image.Write("test_result.jpg");

但我看不出test.jpgtest_result.jpg 之间有任何区别。我为低和高选择的颜色可能不是最好的选择,但我的策略是使用颜色选择器从图像中选择“浅绿色”和“深绿色”(不知道还能做什么) )。

我找不到任何有用的示例来说明如何使用 TransparentChroma 方法,所以我可能在这里走错了路。

【问题讨论】:

    标签: c# chromakey magick.net


    【解决方案1】:

    TransparentChroma 方法使低颜色和高颜色之间的所有像素都透明。但是您的输出图像是没有 alpha 通道的 JPEG。您必须将图像保存为 PNG 或其他支持透明度的格式才能看到正确的图像。

    您还必须对低值和高值进行更多操作,因为这是输出图像:

    【讨论】:

      猜你喜欢
      • 2014-11-25
      • 2023-03-20
      • 2020-09-28
      • 1970-01-01
      • 1970-01-01
      • 2011-11-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多