首页 > 代码库 > 图层混合模式研究(部分)

图层混合模式研究(部分)

仅变(变亮)

公式是:max(a,b)

仅仅是取亮度比较大的,没什么好说的

顶层

底层

混合后

#50 50 50

#9f be 1c

#9f be 50

从这个例子还可以看出算法是对每个通道分别运算

掩蔽(滤色)

公式是:255-comp(a)*comp(b)/255

就是因为红色的部分总是小于1,所以对于被减数会小于comp(b),因此cmop(b*)相当于变小了,从而b*变大,变得更亮。

顶层

底层

混合后

80 80 80

154 185 24

186 207 96

255-175*101/255  

ans =

  185.6863  

255-175*70/255 

ans =

  206.9608  

x=0:255;

y=(255-x).*(255-100)/255;

plot(x,y,‘r‘)

hold on

plot(x,255-y,‘b‘)

axis([0 255 0 255])

grid on 

技术分享

看蓝色部分,设定原始为底层为100,当顶层为0时顶层的补是255,此时b*=255-comp(b),相当于没有变化,而当顶层为255时顶层的补时0,此时b*=255相当于达到极大。

 

减淡(颜色减淡)

公式是:a+a*b/comp(b)

此公式比较奇怪的地方是加数的系数为A,这样取得原因是不同亮度的像素相对亮度变化不同,感受会更加丰富一些。

x=0:255;

y=100+100*x./(255-x);

plot(x,y)

axis([0 255 0 255])

grid on 

 技术分享

 

 

相加(线性简单)

公式:a+b

这个没什么好说的,比滤色还要简单,同颜色减淡相比不能把节奏拉开。

x=0:255;

y=100+x;

plot(x,y)

axis([0 255 0 255])

grid on

技术分享

 各种混合模式的公式(搜集自网络)

 

 技术分享

 

 

 

 

 

图层混合模式研究(部分)