Math Photoshop PhotoFilter像素数学

Math Photoshop PhotoFilter像素数学,math,shader,pixel-shader,Math,Shader,Pixel Shader,有人使用过Photoshop中的照片过滤器吗?编辑>调整>照片过滤器 它产生了一个非常好的图像色调,我无法用混合模式重现。有人知道这个过滤器背后的像素数学吗所以我可以基于它构建一个着色器 它似乎基本上是一种保持亮度的色调 具有变量:颜色、数量和保持亮度 有什么想法吗?光线中的过滤器是乘法的,如: 红色过滤器=1,0,0*颜色 我认为它不存在任何混合模式,因为该系统的任何透明覆盖都会在一定程度上使图像变暗。这非常简单,但如果有人想要hlsl代码: // Photoshop PhotoFilter

有人使用过Photoshop中的照片过滤器吗?编辑>调整>照片过滤器

它产生了一个非常好的图像色调,我无法用混合模式重现。有人知道这个过滤器背后的像素数学吗所以我可以基于它构建一个着色器

它似乎基本上是一种保持亮度的色调

具有变量:颜色、数量和保持亮度


有什么想法吗?

光线中的过滤器是乘法的,如:

红色过滤器=1,0,0*颜色


我认为它不存在任何混合模式,因为该系统的任何透明覆盖都会在一定程度上使图像变暗。

这非常简单,但如果有人想要hlsl代码:

// Photoshop PhotoFilter style effect.

// Input filter color.
float4 FilterColor;

// Implicit texture sampler.
sampler TextureSampler : register(s0);

float4 PhotoFilter(float4 color : COLOR0, float2 texCoord : TEXCOORD0) : COLOR0
{
    return tex2D(TextureSampler, texCoord) * FilterColor;
}

technique GeneralEffect
{
    pass Pass1
    {
        PixelShader = compile ps_2_0 PhotoFilter();
    }

}

大概是想在镜头前复制滤色片的效果吧?是的,确实是这样。我曾尝试在图像上方放置一个彩色图层,然后调整混合模式以产生类似的效果,但效果不同。有什么想法吗?有一种叫做乘法的混合模式就是这样工作的。由于它总是使图像变暗,您需要另一个单独的操作来恢复亮度。有人知道如何像Photoshop那样恢复亮度吗?您共享的非常简单的代码是用于乘法过滤器的。光滤波器更复杂