ps中图层混合模式算法公式
网上已经有很多讲解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中图层混合模式算法公式的更多相关文章
- ps中图层混合模式、多图层叠加、不透明度、填充、图层样式详解
图像领域中,通过进行一下想法的时候,都要通过用ps看下是不是合理,而ps中图层是必用的一个功能,下面详解一下图层有关的叠加原理. 基本顺序是图层从下往上继续, 先计算图层的填充,再计算样式.最后计算不 ...
- PS中图层混合模式的计算方法
https://zhuanlan.zhihu.com/p/23905865 长久以来一直用中文版本的PS,对于软件中的一些专业名字都是顾名思义,容易误入歧途,但当你真正看到英文版本的名字的时候才有豁然 ...
- ps减去图层混合模式
ps减去图层混合模式 CMYK 1.1.青色作为基色,品红作为混合色(减去混合模式) 红反即青色(绿色+蓝色) - 绿反即品红色(红色+蓝色)= 绿色 公式简化: 绿色 + 蓝色 - 红色 - 蓝 ...
- PS中混合模式是什么意思?
PS中图层混合模式中的溶解,变暗,正片叠底,颜色加深,线性加深,叠加,柔光,亮光,强光,线性光,点光,实色混合,差值,排除,色相,饱和度,颜色,亮度各是什么原理? Normal 正常模式,也是 ...
- 图像滤镜艺术---PS图层混合模式之明度模式
本文将介绍PS图层混合模式中比較复杂 的"明度"模式的算法原理及代码实现内容. 说到PS的图层混合模式,计算公式都有,详细代码实现也能找到,可是,都没有完整介绍全部图层混合模式的代 ...
- 【PS算法理论探讨一】 Photoshop中两个32位图像混合的计算公式(含不透明度和图层混合模式)。
大家可以在网上搜索相关的主题啊,你可以搜索到一堆,不过似乎没有那一个讲的很全面,我这里抽空整理和测试一下数据,分享给大家. 我们假定有2个32位的图层,图层BG和图层FG,其中图层BG是背景层(位于下 ...
- PS图层混合模式实例详解
PS中的很多概念都和Core Graphics中的概念相通,比如蒙版.路径.裁剪.混合模式等等.如果你对Core Graphics中的混合模式不太理解,阅读本篇文章能让你对Core Gra ...
- 【PS算法理论探讨二】 Photoshop中图层样式之 投影样式 算法原理初探讨。
接下来几篇文章我们将稍微简单的探索下PS中多种图层混合模式的算法内部原理,因为毕竟没有这方面的官方资料,所以很多方面也只是本人自己的探索和实践,有可能和实际的情况有着较大的差异. 在PS的实践中,图层 ...
- 【小技巧】在PS中测量图层间的边距
今天学到了一个小技巧,前端切页面时会很方便,就是测量间距margin的. 在ps中,选中某个图层,然后按住ctrl键,再移动鼠标,就可以出现这个图层距其他元素的边距,这个太方便了.在此记录一下,免的以 ...
随机推荐
- 转:c语言EOF是什么?(及getchar()和putchar用法)
我学习C语言的时候,遇到的一个问题就是EOF. 它是end of file的缩写,表示"文字流"(stream)的结尾.这里的"文字流",可以是文件(file) ...
- 蛋疼的Apple IOS Push通知协议
简单介绍 Apple Push通知机制事实上非常easy,就是Apple的APNsserver做为中间人,把消息推送到相应的设备上. 一张来自Apple文档的图: 当然,示意图看起来简单,可是另一些实 ...
- OC中多线程的一些概念
1.进程1.1>进程是指在系统中正在运行的一个应用程序(同时打开QQ和Xcode,系统会分别启动2个进程)1.2>每个进程之间是独立的,每个进程均运行在其专用的且受保护的内存空间内 2.线 ...
- 基于visual Studio2013解决面试题之1105字符串压缩
题目
- bottle-session 0.2 : Python Package Index
bottle-session 0.2 : Python Package Index bottle-session 0.2 Download bottle-session-0.2.tar.gz Redi ...
- mysql数据导出权限问题
mysql数据导出的方法有非常多,比如mysqldump, mysql -e 'sql' > file, 这些都能够非常方便的导出数据,但是在使用普通用户导出数据的时候,出现了问题. 1 sel ...
- asp.net2.0安全性(1)--用户角色篇(代码实现2)--转载来自车老师
加载所有用户 MembershipUserCollection user = Membership.GetAllUsers(); listUser.DataSource = user; listUse ...
- Java Thread 那些事
这篇文章被压在草稿箱许久,最近公司内部的技术社区有同学贴出了几篇分享 Java线程的文章,发觉有很多概念没有讲清楚,所以花点时间继续撰写,便有了这篇博文. 本文只聚焦 JVM 层面的线程模型,不考虑和 ...
- Delphi中MethodAddress汇编代码的解析
class function TObject.MethodAddress(const Name: ShortString): Pointer;asm { -> EAX ...
- 基于visual Studio2013解决面试题之0707最小元素
题目