python 调整图片亮度的示例


Posted in Python onDecember 03, 2020

实现效果

python 调整图片亮度的示例

实现代码

import matplotlib.pyplot as plt
from skimage import io

file_name='D:/2020121173119242.png'
img=io.imread(file_name)

Increment = -10.0

img = img * 1.0 
I = (img[:, :, 0] + img[:, :, 1] + img[:, :, 2])/3.0 + 0.001

mask_1 = I > 128.0

r = img [:, :, 0]
g = img [:, :, 1]
b = img [:, :, 2]

rhs = (r*128.0 - (I - 128.0) * 256.0) / (256.0 - I) 
ghs = (g*128.0 - (I - 128.0) * 256.0) / (256.0 - I)
bhs = (b*128.0 - (I - 128.0) * 256.0) / (256.0 - I)

rhs = rhs * mask_1 + (r * 128.0 / I) * (1 - mask_1)
ghs = ghs * mask_1 + (g * 128.0 / I) * (1 - mask_1)
bhs = bhs * mask_1 + (b * 128.0 / I) * (1 - mask_1)

I_new = I + Increment - 128.0

mask_2 = I_new > 0.0

R_new = rhs + (256.0-rhs) * I_new / 128.0
G_new = ghs + (256.0-ghs) * I_new / 128.0
B_new = bhs + (256.0-bhs) * I_new / 128.0

R_new = R_new * mask_2 + (rhs + rhs * I_new/128.0) * (1-mask_2)
G_new = G_new * mask_2 + (ghs + ghs * I_new/128.0) * (1-mask_2)
B_new = B_new * mask_2 + (bhs + bhs * I_new/128.0) * (1-mask_2)

Img_out = img * 1.0

Img_out[:, :, 0] = R_new
Img_out[:, :, 1] = G_new
Img_out[:, :, 2] = B_new

Img_out = Img_out/255.0

# 饱和处理
mask_1 = Img_out < 0 
mask_2 = Img_out > 1

Img_out = Img_out * (1-mask_1)
Img_out = Img_out * (1-mask_2) + mask_2

plt.figure()
plt.imshow(img/255.0)
plt.axis('off')

plt.figure(2)
plt.imshow(Img_out)
plt.axis('off')

plt.figure(3)
plt.imshow(I/255.0, plt.cm.gray)
plt.axis('off')

plt.show()

以上就是python 调整图片亮度的示例的详细内容,更多关于python 调整图片亮度的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
python多重继承实例
Oct 11 Python
探究Python多进程编程下线程之间变量的共享问题
May 05 Python
python实现扫描日志关键字的示例
Apr 28 Python
用TensorFlow实现lasso回归和岭回归算法的示例
May 02 Python
python3.X 抓取火车票信息【修正版】
Jun 19 Python
python3 flask实现文件上传功能
Mar 20 Python
详解Python requests 超时和重试的方法
Dec 18 Python
Python 爬虫实现增加播客访问量的方法实现
Oct 31 Python
python对象转字典的两种实现方式示例
Nov 07 Python
Scrapy框架基本命令与settings.py设置
Feb 06 Python
Python基于network模块制作电影人物关系图
Jun 19 Python
Python代码需要缩进吗
Jul 01 Python
Python 实现PS滤镜的旋涡特效
Dec 03 #Python
Python 实现PS滤镜中的径向模糊特效
Dec 03 #Python
python字符串拼接+和join的区别详解
Dec 03 #Python
python二维图制作的实例代码
Dec 03 #Python
python 使用paramiko模块进行封装,远程操作linux主机的示例代码
Dec 03 #Python
Python 按比例获取样本数据或执行任务的实现代码
Dec 03 #Python
用 Django 开发一个 Python Web API的方法步骤
Dec 03 #Python
You might like
php cli换行示例
2014/04/22 PHP
PHP中的reflection反射机制测试例子
2014/08/05 PHP
Thinkphp实现站点静态化的方法详解
2017/03/21 PHP
JavaScript 克隆数组最简单的方法
2009/02/12 Javascript
javascript中Math.random()使用详解
2015/04/15 Javascript
JS组件Bootstrap Table使用方法详解
2016/02/02 Javascript
jquery之别踩白块游戏的简单实现
2016/07/25 Javascript
node.js路径处理方法以及绝对路径详解
2021/03/04 Javascript
Ajax和Comet技术总结
2017/02/19 Javascript
Vue单文件组件基础模板小结
2017/08/10 Javascript
详解vue mint-ui源码解析之loadmore组件
2017/10/11 Javascript
浅谈es6语法 (Proxy和Reflect的对比)
2017/10/24 Javascript
VUE预渲染及遇到的坑
2018/09/03 Javascript
fetch 如何实现请求数据
2018/12/20 Javascript
vue如何自动化打包测试环境和正式环境的dist/test文件
2019/06/06 Javascript
你了解vue3.0响应式数据怎么实现吗
2019/06/07 Javascript
一文看懂如何简单实现节流函数和防抖函数
2019/09/05 Javascript
vue3为什么要用proxy替代defineProperty
2020/10/19 Javascript
[08:07]DOTA2每周TOP10 精彩击杀集锦vol.8
2014/06/25 DOTA
python 获取et和excel的版本号
2009/04/09 Python
python在不同层级目录import模块的方法
2016/01/31 Python
Python Requests安装与简单运用
2016/04/07 Python
python批量添加zabbix Screens的两个脚本分享
2017/01/16 Python
Anaconda下安装mysql-python的包实例
2018/06/11 Python
浅析python中的迭代与迭代对象
2018/10/08 Python
Python3字符串encode与decode的讲解
2019/04/02 Python
django 实现将本地图片存入数据库,并能显示在web上的示例
2019/08/07 Python
如何对python的字典进行排序
2020/06/19 Python
Python+OpenCV图像处理——实现轮廓发现
2020/10/23 Python
保护环境建议书
2014/03/12 职场文书
大学生通用个人自我评价
2014/04/27 职场文书
讲文明知礼仪演讲稿
2014/09/13 职场文书
异地恋情人节寄语
2015/02/28 职场文书
行政人事专员岗位职责
2015/04/07 职场文书
python cv2图像质量压缩的算法示例
2021/06/04 Python
以下牛机,你有几个
2022/04/05 无线电