Eri*_*ric 7 iphone photoshop core-image ios
我将几个photoshop元素映射到CIFilter,唯一一个我遇到麻烦的是这个级别调整:


哪个CI过滤器(或过滤器的组合)将允许我在第一个示例中使用上面的16,1.72,239和39/245或者在第二个示例中使用31,1.25,255 30/255.我相信这是一种阴影/黑白水平调整.
任何帮助赞赏.
jak*_*ber 10
从这个页面调整公式:http://http.developer.nvidia.com/GPUGems/gpugems_ch22.html,我相信你可以使用的组合做到这一点CIColorMatrix,CIGammaAdjust和其他CIColorMatrix.
让我们把输入电平inBlack,inGamma并inWhite分别与产出水平outBlack和outWhite.请注意,Photoshop颜色介于0到255之间,而CI颜色介于0和1之间,因此您需要将Photoshop值(除了inGamma!)除以255,然后再将它们放入以下公式中.
输入映射是pixel = (inPixel-inBlack)/(inWhite-inBlack),这意味着你的第一个矩阵
red = [1/(inWhite-inBlack) 0 0 0]
green = [0 1/(inWhite-inBlack) 0 0]
blue = [0 0 1/(inWhite-inBlack) 0]
alpha = [0 0 0 1]
bias = [-inBlack/(inWhite-inBlack), -inBlack/(inWhite-inBlack),-inBlack/(inWhite-inBlack), 0]
Run Code Online (Sandbox Code Playgroud)
然后使用CIGammaAdjust和inGamma数字应用伽马校正(1/inGamma在进行计算时我必须使用反向,也可以尝试!).
最后,输出映射是pixel = gammaCorrectedPixel * (outWhite - outBlack) + outBlack,为您提供最终矩阵
red = [(outWhite - outBlack) 0 0 0]
green = [0 (outWhite - outBlack) 0 0]
blue = [0 0 (outWhite - outBlack) 0]
alpha = [0 0 0 1]
bias = [outBlack outBlack outBlack 0]
Run Code Online (Sandbox Code Playgroud)
我实际上并没有尝试使用CoreImage,但计算效果很好!
| 归档时间: |
|
| 查看次数: |
3565 次 |
| 最近记录: |