网上已经有很多讲解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. CCIE路由实验(6) -- 组播Multicasting

    1.组播IGMP的各种情况2.PIM Dense-Mode3.PIM Sparse-Mode4.PIM双向树和SSM5.动态RP之auto-rp6.动态RP之BSR7.Anycast RP8.域间组播 ...

  2. cocos2d-x游戏开发系列教程-坦克大战游戏之所有坦克之间的碰撞检测

    上篇我们完成了简单的AI编写,但是各个坦克移动时之间是可以重合的, 这节课我们来完成坦克之间的碰撞检测,还是在上篇的EnemyAI中完成. 1.我先现在坦克类Tank中添加两个成员变量: CC_SYN ...

  3. Study notes for Sparse Coding

    Sparse Coding Sparse coding is a class of unsupervised methods for learning sets of over-complete ba ...

  4. POJ 2112 Optimal Milking (二分+最短路径+网络流)

    POJ  2112 Optimal Milking (二分+最短路径+网络流) Optimal Milking Time Limit: 2000MS   Memory Limit: 30000K To ...

  5. 【REDO】删除REDO LOG重做日志组后需要手工删除对应的日志文件(转)

    为保证重新创建的日志组成员可以成功创建,我们在删除日志组后需要手工删除对应的日志文件. 1.查看数据库当前REDO LOG日志相关信息1)查看日志组信息sys@ora10g> select * ...

  6. 基于visual Studio2013解决C语言竞赛题之1037数组求列和

          题目 解决代码及点评 /* 功能:已知有三个数组A,B,C,A为5行5列的二维数组,B.C为只有5个元素的一维数组,键盘输入数据的顺序如下: 23,45,6,1,- ...

  7. Windows窗体透明效果

    虚拟机里的win7也想实现透明效果, 使用vitrite这个免费软件就可以了.

  8. Swift - 访问通讯录联系人(使用系统提供的通讯录交互界面)

    1,通讯录访问介绍 通讯录(或叫地址簿,电话簿)是一个数据库,里面储存了联系人的相关信息.要实现访问通讯录有如下两种方式: (1)AddressBook.framework框架 : 没有界面,通过代码 ...

  9. PHP中遍历stdclass object 及 json 总结[中国航天神舟十号以json形式向地面返回数据]

    $test=Array ( [0] => stdClass Object ( [tags] => 最快的车,Bloodhound,SSC [id] => 48326888 11 从网 ...

  10. JDK 环境变量配置(Mac)

    Mac JDK 安装过后 修改 ~/. bash_profile 配置环境变量 修改内容: JAVA_HOME=$(/usr/libexec/java_home) export JAVA_HOME P ...