网上已经有很多讲解ps的图层混合模式,有些不详细甚至是错误的,参考网上给出的公式及其自己在验证推倒的,给出27种的混合模式算法公式。也许存在一定的错误性,毕竟没有官方给出公式,只能说以供参考吧。 只考虑二层,图像是RGB,A是基色,B是混合色。只有B层存在混合模式。C是结果色。 Min函数代表取最小值,Max函数代表取最大值,Abs

1》基础型

主要利用图层的不透明度及图像填充值来控制下层的图像,达到与底色溶解在一起的效果

一、正常(normal)

C[i]=B[i];

二、溶解(Dissolve)

这不是简单的计算公式,需要进行多次函数返回。

按照不透明度的大小来确定颗粒的数量,两数值成正比。

2》降暗型

主要是通过滤除图像中的亮调图像,从而达到使图像变暗的目的

三、变暗(Darken)

C[i]=Min(A[i],B[i]);

四、正片叠加(Multiply)

C[i]=B[i]*(A[i]/);

五、颜色加深(Color Burn)

C[i]={B[i]==  ? B[i] : Max(, Max(, ( - (( - A[i]) <<  ) / B[i])))};  

六、线性加深(Liner Burn)

C[i]={(A[i] + B[i] < ) ?  : (A[i] + B[i] - )};

七、 深色(Darken Color )

当前图层与下方图层相比,颜色深(RGB总和较小)的显现出来,颜色浅的就被隐藏。

3》提亮型

此类型的图层混合模式与降暗型混合模式刚好相反,它通过滤除图像中的暗调信息,达到图像变亮的目的

八、 变亮(lighten)

C[i]={(B[i] > A[i]) ? B[i] : A[i]};

九、 滤色(Screen)

C[i]={ - ((( - A[i]) * ( - B[i])) >> )};

十、颜色减淡(Color Dodge)

c={(B== ) ?B : Min(, ((A<<  ) / ( - B)))}

十一、 线性减淡(也称“添加” 英文名字Add)

C[i]=Min(, (A[i] + B[i]))

十二、   浅色 (lighten Color)

当前图层与下方图层相比,颜色浅(RGB总和较小)的显现出来,颜色深的就被隐藏。

4》融合型

主要用于不同程度的融合图像
十三、  
叠加(Overlay)

C[i]={(B[i] < ) ? ( * A[i] * B[i] / ) : ( -  * ( - A[i]) * ( - B[i]) / )};

十四、  柔光(Soft Light)

计算公式:
混合色 <=128:结果色 = 基色 + (2 * 混合色 - 255) * (基色 - 基色 * 基色 / 255) / 255;
混合色 >128: 结果色 = 基色 + (2 * 混合色 - 255) * (Sqrt(基色/255)*255 - 基色)/255。

十五、   强光(HardLight)

C[i]={(A[i] < ) ? ( * A[i] * B[i] / ) : ( -  * ( - A[i]) * ( - B[i]) / )};

十六、 亮光(Vivid light)

C[i]={B[i] <  ?(B[i] ==  ?  * B[i] : Max(, ( - (( - A[i]) <<  ) / ( * B[i])))) : (( * (B[i] - )) ==  ? ( * (B[i] - )) : Min(, ((A[i] <<  ) / ( - ( * (B[i] - )) ))))};

十七、 线性光(Liner Light)

C[i]=Min(, Max(, (B[i] +  * A[i]) - ))

十八、 点光 (Pin Light)

C[i]=Max(, Max( * B[i] - , Min(B[i],  * A[i])))

十九、  实色混合(Hard Mix)

C[i]={(B[i] <  ?(B[i] ==  ?  * B[i] : Max(, ( - (( - A[i]) <<  ) / ( * B[i])))) : (( * (B[i] - )) ==  ? ( * (B[i] - )) : Min(, ((A[i] <<  ) / ( - ( * (B[i] - )) )))))<  ?  : };

5》色异型

主要用于制作各种另类,发色效果

二十、   差值(Difference)

C[i]=Abs(A[i] - B[i])

二十一、 排除(Exclusion)

C[i]= A[i] + B[i] -  * A[i] * B[i] / 

二十二、 减去(Subtract)

C[i]=A[i]-B[i]

二十三、 划分(Divide)

C[i]=(A[i]/B[i])*

6》蒙色型

主要依据上层图像中的颜色信息,不同程度的映衬下面图层上的图像

二十四、 色相(Hue)

使用HSB数值进行计算,保留混合色的H,也就是色相值;S与B(饱和度与明度)使用基色数值。

二十五、 饱和度(Saturation)

与色相模式相似,不过保留的混合色的值是S。

二十六、  明度(Luminosity)

与色相模式相似,不过保留的混合色的值是B。

二十七、 颜色(Color)

与色相模式相似,不过保留的混合色的值是HS。

ps中图层混合模式算法公式的更多相关文章

  1. ps中图层混合模式、多图层叠加、不透明度、填充、图层样式详解

    图像领域中,通过进行一下想法的时候,都要通过用ps看下是不是合理,而ps中图层是必用的一个功能,下面详解一下图层有关的叠加原理. 基本顺序是图层从下往上继续, 先计算图层的填充,再计算样式.最后计算不 ...

  2. PS中图层混合模式的计算方法

    https://zhuanlan.zhihu.com/p/23905865 长久以来一直用中文版本的PS,对于软件中的一些专业名字都是顾名思义,容易误入歧途,但当你真正看到英文版本的名字的时候才有豁然 ...

  3. ps减去图层混合模式

    ps减去图层混合模式 CMYK 1.1.青色作为基色,品红作为混合色(减去混合模式) 红反即青色(绿色+蓝色) - 绿反即品红色(红色+蓝色)= 绿色   公式简化: 绿色 + 蓝色 - 红色 - 蓝 ...

  4. PS中混合模式是什么意思?

      PS中图层混合模式中的溶解,变暗,正片叠底,颜色加深,线性加深,叠加,柔光,亮光,强光,线性光,点光,实色混合,差值,排除,色相,饱和度,颜色,亮度各是什么原理?   Normal 正常模式,也是 ...

  5. 图像滤镜艺术---PS图层混合模式之明度模式

    本文将介绍PS图层混合模式中比較复杂 的"明度"模式的算法原理及代码实现内容. 说到PS的图层混合模式,计算公式都有,详细代码实现也能找到,可是,都没有完整介绍全部图层混合模式的代 ...

  6. 【PS算法理论探讨一】 Photoshop中两个32位图像混合的计算公式(含不透明度和图层混合模式)。

    大家可以在网上搜索相关的主题啊,你可以搜索到一堆,不过似乎没有那一个讲的很全面,我这里抽空整理和测试一下数据,分享给大家. 我们假定有2个32位的图层,图层BG和图层FG,其中图层BG是背景层(位于下 ...

  7. PS图层混合模式实例详解

          PS中的很多概念都和Core Graphics中的概念相通,比如蒙版.路径.裁剪.混合模式等等.如果你对Core Graphics中的混合模式不太理解,阅读本篇文章能让你对Core Gra ...

  8. 【PS算法理论探讨二】 Photoshop中图层样式之 投影样式 算法原理初探讨。

    接下来几篇文章我们将稍微简单的探索下PS中多种图层混合模式的算法内部原理,因为毕竟没有这方面的官方资料,所以很多方面也只是本人自己的探索和实践,有可能和实际的情况有着较大的差异. 在PS的实践中,图层 ...

  9. 【小技巧】在PS中测量图层间的边距

    今天学到了一个小技巧,前端切页面时会很方便,就是测量间距margin的. 在ps中,选中某个图层,然后按住ctrl键,再移动鼠标,就可以出现这个图层距其他元素的边距,这个太方便了.在此记录一下,免的以 ...

随机推荐

  1. httplib,urllib和urllib2

    一.httplib实现了HTTP和HTTPS的客户端协议,一般不直接使用,在python更高层的封装模块中(urllib,urllib2)使用了它的http实现. import httplib con ...

  2. 基于visual Studio2013解决C语言竞赛题之0705矩阵转置

     题目 解决代码及点评 /* 5. 写一函数,将一个3×3的矩阵转置. */ #include <stdio.h> #include <stdlib.h> void mai ...

  3. css图片上下垂直居中

    <!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  4. poj1830

    高斯消元求秩,难在构造方程. ; ; i < equ; i++)     {         ; j < var + ; j++)         {             cout & ...

  5. Why Python?

    Python is object-oriented Structure supports such concepts as polymorphism , operation overloading , ...

  6. hdu 1421 搬寝室 (dp)

    思路分析: dp[i][j] 表示选取到第 i 个   组成了 j 对的最优答案. 当然排序之后 选取相邻两个是更优的. if(i==j*2) dp[i][j] = dp[i-2][j-1] + w[ ...

  7. ASP.NET - 网页重定向 Response.Redirect()

    在网页中使用重定向,意思就是在网站中的某一个页面跳转到另一个页面. Response.Redirect(~/abc.aspx); 使用“~”的作用是可以从任意位置跳转. 如果没有“~”,那么跳转的时候 ...

  8. pthread_setschedprio()函数详解!!!

    pthread_setschedprio() Set a thread's priority 用于设置现成的优先级 包含在头文件 #include <pthread.h> 用法:int p ...

  9. iOS进阶面试题----经典10道

    OneV‘s Den在博客里出了10道iOS面试题,用他的话是:"列出了十个应聘Leader级别的高级Cocoa/CocoaTouch开发工程师所应该掌握和理解的技术" .  在这 ...

  10. windows lwp 乱码问题

    use LWP::UserAgent; use Encode; my $ua = LWP::UserAgent->new; $phone=$ARGV[0]; $cc=$ARGV[1]; $ua- ...