使去饱和的图像透明,仅保留阴影和高光


17

我已经尝试这样做了几天,但没有得到我需要的结果。我不确定标题中使用的术语是否正确,否则请随时进行纠正,我将对其进行更新。

我想从这里开始: 在此处输入图片说明

为此(我对透明区域进行了采样,以在有帮助的情况下显示k值)。注意阴影/高光在那里,但是没有其他: 结果图片

这使我可以在透明图像下方放置一个填充有纯色的图层。结果是另一种颜色的衬衫,并且可以看到阴影/高光:

透明衬衫层下方的蓝色填充层 在此处输入图片说明

透明衬衫层下方放置黑色填充层 在此处输入图片说明

有人对我如何能够做到这一点有任何想法吗?我已经能够接近结果了,但是我的透明度不够或太高。我失去了很多阴影/高光细节。起始图像的文件类型为JPG。

更新:

我需要最终结果是这样的PNG: 在此处输入图片说明

此PNG看起来具有白色背景,但是将其带入Photoshop或GIMP后,您会看到衬衫是透明的。我需要对这些方法进行反向工程,以便可以将其用于其他衣服。

上面的PNG有趣的是,图像的透明部分中的阴影,高光和中间色调都可以单独选择。Photoshop:选择->色彩范围->阴影,高光或中间调。下图显示了我的意思: 在此处输入图片说明


2
为什么不使用“相乘”模式进行图层混合?看起来您的形状具有明确定义的边缘,因此您可以很容易地将其掩盖。
ckpepper02 2013年

1
因为OP希望将图像导出为透明PNG。乘以它后面的颜色。
汉娜(Hanna)2013年


然后乘以+遮罩即可。
约翰

约翰,你能谈谈吗?
汉娜(Hanna)

Answers:


13

将白色指定为透明度的Alpha通道时,我们将无法使用不透明的高光,因为每个定义的高光都将是白色的,因此是完全透明的。

要使alpha通道同时保留突出显示的白色区域和黑色阴影,我们最好选择灰色来分配alpha。

  • 为了更清楚地显示效果,我首先使您的原始图像更暗,并增加了对比度。您既需要调整源对比度,又需要选择最适合您的灰度以获得更好的效果。

  • 然后,我为Alpha通道分配了“灰色”颜色(而不是白色):

    在此处输入图片说明

现在,当我们用绿色背景覆盖这张图片时,我们可以看到,高光和阴影都得到了保持。

在此处输入图片说明

我们可以看到,当用于深色时,原始图像的白色区域可能仍然太亮而无法获得所需的效果。当我们选择灰色而不是白色的光源来创建我们的Alpha通道模板时,可以克服这一问题。

在下方(左上方),我使用了灰色水桶填充,白色原件上的不透明度为20%。将透明的Alpha通道分配给灰色(右上)后,我们可以覆盖彩色背景(左黑色,中暗红色,右象牙白)以实现底线效果。

在此处输入图片说明


我是新手,并且在alpha通道方面遇到了麻烦。到目前为止,我获得透明效果的方法是转到“通道”选项卡,然后按住Ctrl键并单击RGB通道。然后,我使用快速蒙版并调整级别,但似乎无法到达您在发布的第一张图片中所处的位置。您如何将Alpha通道分配给灰色?
aMMT

@Phonetic:我很快就用Gimp做到了这一点(有一个菜单项可以选择任何颜色来提高透明度)。这使我相信PS或您使用的任何应用程序中也有(或应该有)这样的选项。但是,Peter的非常好的anwer给出了一种更好的方法,即分离高光和阴影。这样可以进行更精细的调整。
塔卡特2013年

我知道了 完全按照这些说明完成了我需要的工作。非常感谢
aMMT

我能得到本教程的psd吗?

@Takkat能否请您提及第二点的步骤-“然后我为Alpha通道分配了“灰色”颜色(而不是白色)?
维沙尔

13

为此,最好为阴影和高光创建单独的通道

阴影可以从白T恤直接采取,并且被用作乘数(0-100%)为衬衫的颜色(层模式:乘法)

至于亮点,这实际上取决于材料。布在表面上不会反射太多光,因此它的大部分颜色来自漫射光(衬衫的颜色)。为了提取镜面光,我将在白衬衫的图像上使用高通滤镜(直方图适应:仅显示明亮的颜色,不选择任何深色),并使用它来使衬衫变亮,但可能只有20% (低反射)。

层数:

在此处输入图片说明

产生的图像:

在此处输入图片说明


这很棒。有什么办法可以使最终图像成为透明的PNG?此处的最终目标是在网站上使用1张png图像,并通过更改包含图像的html div的背景色,衬衫颜色将有效地改变。
aMMT

我很难找到重点。我想我错过了一步,因为在应用了高通滤镜之后,我将高通滤镜应用到的衬衫看上去非常灰暗(对比度不高,就像我在“亮点”图层中看到的那样) 。首先,我在高通滤波器上使用了20像素的半径,然后尝试了一些不同的半径值,但是我并没有接近在高光层中看到的值。我会缺少什么?
aMMT 2013年

使用相同的方法,将图像的背景/外部填充为白色,然后让CSS充当底层。衬衫是半透明的窗户。
约翰

我希望我能更好地理解这个答案,因为它听起来真的很酷。
汉娜(Hanna)2013年

此效果需要混合模式(相乘,变亮),而HTML仅使用常规混合(彼此绘制透明图像)。可以选择HTML5 + SVG,但浏览器似乎尚不支持SVG混合模式。参见dev.w3.org/SVG/modules/compositing/master/…。在浏览器中实现此效果的有效方法是在页面中嵌入一个小型Java程序(Java2d混合模式)。
彼得·沃尔瑟

1

有一种更简单的方法-选择白色背景,将其反转,定义画笔预设,创建基于透明,灰度的新文件-就是这样。选择画笔,这是列表中的最后一个,然后用黑色fourground色板单击一次。瞧!比起您可以另存为网络-png。


1

使用CSS过滤器,而不是多个图像

您应该使用CSS过滤器为网站的图像着色。

在此处输入图片说明

好处如下。

  1. 只需要一张图像。
  2. 较小的图像文件大小。
  3. 无需使用图像编辑器即可更好地控制颜色。
  4. 移动友好。
  5. 加载时间更快。
  6. 更好的SEO。

对于Hue,请使用以下CSS过滤器:

img {
  -webkit-filter: hue-rotate(90deg);
  filter: hue-rotate(90deg);
}

对于亮度使用:

img {
  -webkit-filter: hue-rotate(90deg);
  filter: hue-rotate(90deg);
}

对于饱和度使用:

img {
  -webkit-filter: saturate(8);
  filter: saturate(8);
}

对于灰度用途:

img {
  -webkit-filter: grayscale(1);
  filter: grayscale(1);
}
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.