python 对一幅灰度图像进行直方图均衡化


Posted in Python onOctober 27, 2020
from PIL import Image
from pylab import *
from numpy import *


def histeq(im,nbr_bins = 256):
  """对一幅灰度图像进行直方图均衡化"""
  #计算图像的直方图
  #在numpy中,也提供了一个计算直方图的函数histogram(),第一个返回的是直方图的统计量,第二个为每个bins的中间值
  imhist,bins = histogram(im.flatten(),nbr_bins,normed= True)
  cdf = imhist.cumsum()  #
  cdf = 255.0 * cdf / cdf[-1]
  #使用累积分布函数的线性插值,计算新的像素值
  im2 = interp(im.flatten(),bins[:-1],cdf)
  return im2.reshape(im.shape),cdf


pil_im = Image.open('E:\Python\\fanwei.jpg')  #打开原图
pil_im_gray = pil_im.convert('L')   #转化为灰度图像
pil_im_gray.show()     #显示灰度图像

im = array(Image.open('E:\Python\\fanwei.jpg').convert('L'))
# figure()
# hist(im.flatten(),256)

im2,cdf = histeq(im)
# figure()
# hist(im2.flatten(),256)
# show()

im2 = Image.fromarray(uint8(im2))
im2.show()
# print(cdf)
# plot(cdf)
im2.save("junheng.jpg")

图1:原图的灰度图

python 对一幅灰度图像进行直方图均衡化

图2:进行直方图均衡化后的图像

python 对一幅灰度图像进行直方图均衡化

图3:原图灰度图的直方图

python 对一幅灰度图像进行直方图均衡化

图4:进行直方图均衡化后的直方图

python 对一幅灰度图像进行直方图均衡化

图5:灰度变换函数

python 对一幅灰度图像进行直方图均衡化

以上就是python 对一幅灰度图像进行直方图均衡化的详细内容,更多关于python 直方图均衡化的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
学习python的几条建议分享
Feb 10 Python
Python判断列表是否已排序的各种方法及其性能分析
Jun 20 Python
TensorFLow用Saver保存和恢复变量
Mar 10 Python
python 以16进制打印输出的方法
Jul 09 Python
python 反向输出字符串的方法
Jul 16 Python
selenium+python自动化测试之多窗口切换
Jan 23 Python
python ChainMap 合并字典的实现步骤
Jun 11 Python
python3.7 openpyxl 删除指定一列或者一行的代码
Oct 08 Python
python虚拟环境模块venv使用及示例
Mar 04 Python
简单了解Django项目应用创建过程
Jul 06 Python
Django ModelForm组件原理及用法详解
Oct 12 Python
python的setattr函数实例用法
Dec 16 Python
Pycharm操作Git及GitHub的步骤详解
Oct 27 #Python
python 爬虫如何正确的使用cookie
Oct 27 #Python
python+requests实现接口测试的完整步骤
Oct 27 #Python
python设置中文界面实例方法
Oct 27 #Python
使用python-cv2实现Harr+Adaboost人脸识别的示例
Oct 27 #Python
基于python实现坦克大战游戏
Oct 27 #Python
Django xadmin安装及使用详解
Oct 26 #Python
You might like
php遍历所有文件及文件夹的方法深入解析
2013/06/08 PHP
php中filter函数验证、过滤用户输入的数据
2014/01/13 PHP
使用PHP备份MYSQL数据的多种方法
2014/01/15 PHP
给Function做的OOP扩展
2009/05/07 Javascript
jQuery(1.3.2) 7行代码搞定跟随屏幕滚动的层
2009/05/21 Javascript
jquery 为a标签绑定click事件示例代码
2014/06/23 Javascript
js实现的黑背景灰色二级导航菜单效果代码
2015/08/24 Javascript
利用JS生成博文目录及CSS定制博客
2016/02/10 Javascript
深入理解js promise chain
2016/05/05 Javascript
angular中实现li或者某个元素点击变色的两种方法
2017/07/27 Javascript
ES6 javascript中class静态方法、属性与实例属性用法示例
2017/10/30 Javascript
解决VUE框架 导致绑定事件的阻止冒泡失效问题
2018/02/24 Javascript
JavaScript常见鼠标事件与用法分析
2019/01/03 Javascript
Vue Echarts实现可视化世界地图代码实例
2019/05/07 Javascript
使用Bootstrap做一个朝代历史表
2019/12/10 Javascript
vue滑动吸顶及锚点定位的示例代码
2020/05/10 Javascript
[04:04]DOTA2亚洲邀请赛比赛场馆&酒店全攻略
2017/03/23 DOTA
[01:03:33]Alliance vs TNC 2019国际邀请赛小组赛 BO2 第一场 8.16
2019/08/18 DOTA
python网络编程实例简析
2014/09/26 Python
python实现随机森林random forest的原理及方法
2017/12/21 Python
详解Python locals()的陷阱
2019/03/26 Python
python基于itchat模块实现微信防撤回
2019/04/29 Python
Python3.5文件读与写操作经典实例详解
2019/05/01 Python
Python二进制文件读取并转换为浮点数详解
2019/06/25 Python
Python中的全局变量如何理解
2020/06/04 Python
支持IE8的纯css3开发的响应式设计动画菜单教程
2014/11/05 HTML / CSS
css 如何让背景图片拉伸填充避免重复显示
2013/07/11 HTML / CSS
介绍一下Prototype的$()函数,$F()函数,$A()函数都是什么作用?
2014/03/05 面试题
努力学习演讲稿
2014/05/10 职场文书
毕业生见习报告总结
2014/11/08 职场文书
2014年转正工作总结
2014/11/08 职场文书
自主招生自荐信格式范文
2015/03/25 职场文书
六一晚会主持词开场白
2015/05/28 职场文书
2015小学新教师个人工作总结
2015/10/14 职场文书
为什么不建议在go项目中使用init()
2021/04/12 Golang
mysql字段为NULL索引是否会失效实例详解
2022/05/30 MySQL