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中__init__和__new__的区别详解
Jul 09 Python
Python 列表list使用介绍
Nov 30 Python
Python 通过URL打开图片实例详解
Jun 01 Python
python redis 删除key脚本的实例
Feb 19 Python
基于python解线性矩阵方程(numpy中的matrix类)
Oct 21 Python
Python函数参数类型及排序原理总结
Dec 19 Python
opencv python图像梯度实例详解
Feb 04 Python
python使用html2text库实现从HTML转markdown的方法详解
Feb 21 Python
matplotlib.pyplot.matshow 矩阵可视化实例
Jun 16 Python
Python  word实现读取及导出代码解析
Jul 09 Python
pycharm 多行批量缩进和反向缩进快捷键介绍
Jan 15 Python
Python人工智能之混合高斯模型运动目标检测详解分析
Nov 07 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
允许phpmyadmin空密码登录的配置方法
2011/05/29 PHP
kohana框架上传文件验证规则写法示例
2014/07/14 PHP
在Linux系统的服务器上隐藏PHP版本号的方法
2015/06/06 PHP
php实现构建排除当前元素的乘积数组方法
2018/10/06 PHP
详细对比php中类继承和接口继承
2018/10/11 PHP
Extjs Ext.MessageBox.confirm 确认对话框详解
2010/04/02 Javascript
JS+CSS实现Li列表隔行换色效果的方法
2015/02/16 Javascript
Js实现自定义右键行为
2015/03/26 Javascript
vue.js学习笔记:如何加载本地json文件
2017/01/17 Javascript
angularjs实现下拉列表的选中事件示例
2017/03/03 Javascript
BootStrap Fileinput插件和Bootstrap table表格插件相结合实现文件上传、预览、提交的导入Excel数据操作步骤
2017/08/07 Javascript
初探JavaScript 面向对象(推荐)
2017/09/03 Javascript
js实现简单选项卡功能
2020/03/23 Javascript
JavaScript 格式化数字、金额、千分位、保留几位小数、舍入舍去
2019/07/23 Javascript
vue中@change兼容问题详解
2019/10/25 Javascript
详细介绍Python语言中的按位运算符
2013/11/26 Python
微信跳一跳自动运行python脚本
2018/01/08 Python
在CMD命令行中运行python脚本的方法
2018/05/12 Python
Python configparser模块配置文件过程解析
2020/03/03 Python
css3中transition属性详解
2014/09/02 HTML / CSS
Orvis官网:自1856年以来,优质服装、飞钓装备等
2018/12/17 全球购物
世界上最好的足球商店:Unisport
2019/03/02 全球购物
XML文档面试题
2015/08/05 面试题
linux面试题参考答案(8)
2015/08/11 面试题
MIS软件工程师的面试题
2016/04/22 面试题
司仪主持词两篇
2014/03/22 职场文书
村主任“四风”问题个人对照检查材料思想汇报
2014/10/02 职场文书
四风个人对照检查材料思想汇报(办公室通用版)
2014/10/07 职场文书
2014年销售工作总结范文
2014/12/01 职场文书
2014年乡镇团委工作总结
2014/12/18 职场文书
升学宴答谢词
2015/01/05 职场文书
外贸英文求职信范文
2015/03/19 职场文书
2016幼儿园教师节新闻稿
2015/11/25 职场文书
SpringCloud Feign请求头删除修改的操作代码
2022/03/20 Java/Android
Java 多线程协作作业之信号同步
2022/05/11 Java/Android
JavaScript圣杯布局与双飞翼布局实现案例详解
2022/08/05 Javascript