Python实现PS图像明亮度调整效果示例


Posted in Python onJanuary 23, 2018

本文实例讲述了Python实现PS图像明亮度调整效果。分享给大家供大家参考,具体如下:

这里用 Python 实现 PS 图像调整中的明度调整:

我们知道,一般的非线性RGB亮度调整只是在原有R、G、B值基础上增加和减少一定量来实现的,而PS的明度调整原理还得从前面那个公式上去找。我们将正向明度调整公式:

RGB = RGB + (255 - RGB) * value / 255

转换为

RGB = (RGB * (255 - value) + 255 * value) / 255

如果value用1表示最大值255,则为

RGB = RGB * (1 - value) + 255 * value

可以看出什么呢?凡是知道图像合成的人都知道这个公式,其实PS的明度调整是采用Alpha合成方式,这里的value就是Alpha,公式前面部分RGB * (1 - value)的是图像部分,后面的255 * value部分则是一个白色遮照层,明度越大,遮照层的Alpha越大,图像就越谈,反之亦然。而明度的负调整则是以一个黑色遮照层来完成的。负100%就全黑了。只有遮照层Alpha=0,也就是明度值为0时,才是完完全全的图片显示。

明度调整,利用图层的合成

如果alpha大于0,相当于利用一个白色遮罩层合成

RGB = RGB * (1 - alpha) + 255 * alpha;

如果alpha小于0,相当于利用一个黑色遮罩层合成

RGB=RGB * (1+alpha) + 0 * alpha;

import matplotlib.pyplot as plt
from skimage import io
file_name='D:/Visual Effects/PS Algorithm/4.jpg';
img=io.imread(file_name)
# -255.0 - 255.0 alpha -1.0 - 1.0
Increment = 105.0;
alpha = Increment/255.0;
def Illumi_adjust(alpha, img):
  if alpha > 0 :
    img_out = img * (1 - alpha) + alpha * 255.0
  else:
    img_out = img * (1 + alpha)
  return img_out/255.0
img_out = Illumi_adjust(alpha, img)
plt.figure()
plt.imshow(img)
plt.axis('off')
plt.figure(2)
plt.imshow(img_out)
plt.axis('off')
plt.show()

原图

Python实现PS图像明亮度调整效果示例

明度增加:

Python实现PS图像明亮度调整效果示例

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python入门篇之字符串
Oct 17 Python
10种检测Python程序运行时间、CPU和内存占用的方法
Apr 01 Python
Pythont特殊语法filter,map,reduce,apply使用方法
Feb 27 Python
win7 x64系统中安装Scrapy的方法
Nov 18 Python
Scrapy框架爬取西刺代理网免费高匿代理的实现代码
Feb 22 Python
Python基于BeautifulSoup和requests实现的爬虫功能示例
Aug 02 Python
python3中pip3安装出错,找不到SSL的解决方式
Dec 12 Python
在python里创建一个任务(Task)实例
Apr 25 Python
解决python图像处理图像赋值后变为白色的问题
Jun 04 Python
Python pymysql模块安装并操作过程解析
Oct 13 Python
Python道路车道线检测的实现
Jun 27 Python
Python&Matlab实现樱花的绘制
Apr 07 Python
matplotlib绘图实例演示标记路径
Jan 23 #Python
Android基于TCP和URL协议的网络编程示例【附demo源码下载】
Jan 23 #Python
Python实现PS图像抽象画风效果的方法
Jan 23 #Python
matplotlib作图添加表格实例代码
Jan 23 #Python
Python使用pip安装报错:is not a supported wheel on this platform的解决方法
Jan 23 #Python
Django实现组合搜索的方法示例
Jan 23 #Python
50行Python代码实现人脸检测功能
Jan 23 #Python
You might like
一步一步学习PHP(1) php开发环境配置
2010/02/15 PHP
php 网页播放器用来播放在线视频的代码(自动判断并选择视频文件类型)
2010/06/03 PHP
php feof用来识别文件末尾字符的方法
2010/08/01 PHP
PHP实现时间轴函数代码
2011/10/08 PHP
php+ajax实现无刷新动态加载数据技术
2015/04/28 PHP
PHP判断字符串长度的两种方法很实用
2015/09/22 PHP
php实现异步数据调用的方法
2015/12/24 PHP
php使用PDO执行SQL语句的方法分析
2017/02/16 PHP
jquery 页面全选框实践代码
2010/04/02 Javascript
jquery如何实现锚点链接之间的平滑滚动
2013/12/02 Javascript
javascript中对变量类型的判断方法
2015/08/09 Javascript
浅谈javascript函数式编程
2015/09/06 Javascript
Vue 滚动行为的具体使用方法
2017/09/13 Javascript
微信小程序 swiper组件构建轮播图的实例
2017/09/20 Javascript
详解Vue文档中几个易忽视部分的剖析
2018/03/24 Javascript
js根据需要计算数组中重复出现某个元素的个数
2019/01/18 Javascript
JavaScript递归函数定义与用法实例分析
2019/01/24 Javascript
详解Django框架中的视图级缓存
2015/07/23 Python
PHP网页抓取之抓取百度贴吧邮箱数据代码分享
2016/04/13 Python
Python分析彩票记录并预测中奖号码过程详解
2019/07/09 Python
django框架面向对象ORM模型继承用法实例分析
2019/07/29 Python
关于python字符串方法分类详解
2019/08/20 Python
python实现KNN分类算法
2019/10/16 Python
Pytorch to(device)用法
2020/01/08 Python
tensorflow2.0保存和恢复模型3种方法
2020/02/03 Python
Keras实现将两个模型连接到一起
2020/05/23 Python
python中加背景音乐如何操作
2020/07/19 Python
css3发光搜索表单分享
2014/04/11 HTML / CSS
销售人员个人求职信
2013/09/26 职场文书
个人先进材料范文
2014/12/30 职场文书
2015年试用期自我评价范文
2015/03/10 职场文书
2015年教师节活动总结
2015/03/20 职场文书
小学教师工作总结2015
2015/04/07 职场文书
2016国庆节67周年红领巾广播稿
2015/12/18 职场文书
会计入职心得体会
2016/01/22 职场文书
CSS3实现的水平标题菜单
2021/04/14 HTML / CSS