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 while、for、生成器、列表推导等语句的执行效率测试
Jun 03 Python
Python 常用 PEP8 编码规范详解
Jan 22 Python
python实现对指定输入的字符串逆序输出的6种方法
Apr 26 Python
python 删除非空文件夹的实例
Apr 26 Python
python3.5 email实现发送邮件功能
May 22 Python
pyspark.sql.DataFrame与pandas.DataFrame之间的相互转换实例
Aug 02 Python
Python判断是否json是否包含一个key的方法
Dec 31 Python
python 搜索大文件的实例代码
Jul 08 Python
python实现从ftp上下载文件的实例方法
Jul 19 Python
PyQt5的相对布局管理的实现
Aug 07 Python
Python读取ini配置文件传参的简单示例
Jan 05 Python
python基础之while循环语句的使用
Apr 20 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程序实现支持页面后退的两种方法
2008/06/30 PHP
PHP版QQ互联OAuth示例代码分享
2015/07/05 PHP
php获取文件后缀的9种方法
2016/03/22 PHP
PHP使用反射机制实现查找类和方法的所在位置
2016/04/22 PHP
PHP文件上传、客户端和服务器端加限制、抓取错误信息、完整步骤解析
2017/01/12 PHP
php中如何执行linux命令详解
2018/11/06 PHP
PHP类的自动加载与命名空间用法实例分析
2020/06/05 PHP
javascript实现轮显新闻标题链接
2007/08/13 Javascript
ASP.NET jQuery 实例16 通过控件CustomValidator验证RadioButtonList
2012/02/03 Javascript
Javascript中匿名函数的多种调用方式总结
2013/12/06 Javascript
JavaScript定时器和优化的取消定时器方法
2015/07/03 Javascript
js中javascript:void(0) 真正含义
2020/11/05 Javascript
jQuery中的insertBefore(),insertAfter(),after(),before()区别介绍
2016/09/01 Javascript
webpack+vue.js快速入门教程
2016/10/12 Javascript
简单实现node.js图片上传
2016/12/18 Javascript
JS中通过url动态获取图片大小的方法小结(两种方法)
2018/10/31 Javascript
浅谈Layui的eleTree树式选择器使用方法
2019/09/25 Javascript
Node.js学习之内置模块fs用法示例
2020/01/22 Javascript
使用eslint和githooks统一前端风格的技巧
2020/07/29 Javascript
[02:20]DOTA2亚洲邀请赛 IG战队出场宣传片
2015/02/07 DOTA
MySQLdb ImportError: libmysqlclient.so.18解决方法
2014/08/21 Python
Python之Web框架Django项目搭建全过程
2017/05/02 Python
Python列表list解析操作示例【整数操作、字符操作、矩阵操作】
2017/07/25 Python
python使用标准库根据进程名如何获取进程的pid详解
2017/10/31 Python
python正则表达式及使用正则表达式的例子
2018/01/22 Python
python 多线程将大文件分开下载后在合并的实例
2018/11/09 Python
python实现定时发送qq消息
2019/01/18 Python
Python交互环境下打印和输入函数的实例内容
2020/02/16 Python
python openCV自制绘画板
2020/10/27 Python
使用HTML5里的classList操作CSS类
2016/06/28 HTML / CSS
阿里健康官方海外旗舰店:阿里健康国际自营
2017/11/24 全球购物
中国一家专注拼团的社交购物网站:拼多多
2018/06/13 全球购物
Myprotein亚太地区:欧洲第一在线运动营养品牌
2020/12/20 全球购物
小学教师师德反思
2014/02/03 职场文书
小学教师读书活动总结
2014/07/08 职场文书
Qt自定义Plot实现曲线绘制的详细过程
2021/11/02 Python