图像光照效果滤镜
最后更新于:2022-04-01 06:46:20
图像光照滤镜
图像光照提滤镜主要是模拟阳光照射下的图像效果,通常使用在暗光环境下拍摄的照片中,或者是没有太阳的日景照片中。可调参数主要包括光源位置,光照半径和光照强度,通过调整这些参数,来达到我们想要的阳光明媚的效果。算法过程如下:
图像光照效果就是在图像中添加上一个太阳光源,以此模仿光照条件。主要算法包括:1光源选择;2光照像素值求取。
1,光源选择。我们假设光源位置坐标为S(X,Y),其中光源坐标一定要保证在图像大小范围内。有了光源位置,我们就可以来构建一个圆形区域模拟光照了。我们设定光源半径为R,那么,光照范围就是以S(X,Y)为圆心,以R为半径的圆了。
根据光源特性,在图像中表现为中间靠近圆心最亮,亮度延半径方向向四周逐渐减弱。因此,我们根据光源圆形的范围内像素距离圆心的欧几里得距离来构建线性变换的公式,假设欧几里得距离为D,变换后的像素值为f,则公式如下:
[](http://www.zealpixel.com/data/attachment/portal/201507/19/104324rvg3gl0slneeen53.png)
2,光照像素值求取。对于光源范围内的像素,光照效果值是原像素值和光照值的叠加,我们按如下公式计算:
[](http://www.zealpixel.com/data/attachment/portal/201507/19/104432mmxjmx58jjewlowz.png)
注意,如果光照效果值P超出了[0,255]范围,那么我们将其修正到光照范围即可。
下面是我们的效果图:
[](http://www.zealpixel.com/data/attachment/portal/201507/19/104525zmfvb1ct5r5r5m1r.jpg)
原图
[](http://www.zealpixel.com/data/attachment/portal/201507/19/104524ndjnecc5uv0mdpue.png)
光照效果图
最后,放上一个完整的C#程序Demo下载链接:[http://www.zealpixel.com/forum.php?mod=viewthread&tid=50&page=1&extra=#pid51](http://www.zealpixel.com/forum.php?mod=viewthread&tid=50&page=1&extra=#pid51)