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 图片验证码代码
Dec 07 Python
Python实现抓取页面上链接的简单爬虫分享
Jan 21 Python
基于Python Shell获取hostname和fqdn释疑
Jan 25 Python
python非递归全排列实现方法
Apr 10 Python
Python使用Dijkstra算法实现求解图中最短路径距离问题详解
May 16 Python
python利用selenium进行浏览器爬虫
Apr 25 Python
pycharm访问mysql数据库的方法步骤
Jun 18 Python
jenkins配置python脚本定时任务过程图解
Oct 29 Python
Pytorch中Tensor与各种图像格式的相互转化详解
Dec 26 Python
pycharm实现在子类中添加一个父类没有的属性
Mar 12 Python
python打包生成so文件的实现
Oct 30 Python
详解Python为什么不用设计模式
Jun 24 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将会员数据导入到ucenter的代码
2010/07/18 PHP
PHP连接SQLServer2005方法及代码
2013/12/26 PHP
php中file_get_contents与curl性能比较分析
2014/11/08 PHP
thinkphp区间查询、统计查询与SQL直接查询实例分析
2014/11/24 PHP
php调用KyotoTycoon简单实例
2015/04/02 PHP
ThinkPHP项目分组配置方法分析
2016/03/23 PHP
javascript延时重复执行函数 lLoopRun.js
2007/06/29 Javascript
新浪微博字数统计 textarea字数统计实现代码
2011/08/28 Javascript
Nodejs获取网络数据并生成Excel表格
2020/03/31 NodeJs
js控制文本框禁止输入特殊字符详解
2017/04/07 Javascript
JS简单获取当前日期和农历日期的方法
2017/04/17 Javascript
Node.js开发第三方微信公众平台
2017/06/05 Javascript
JavaScript条件判断_动力节点Java学院整理
2017/06/26 Javascript
Vue+Jwt+SpringBoot+Ldap完成登录认证的示例代码
2018/05/21 Javascript
基于jquery实现的tab选项卡功能示例【附源码下载】
2019/06/10 jQuery
layUI实现列表查询功能
2019/07/27 Javascript
js常用方法、检查是否有特殊字符串、倒序截取字符串操作完整示例
2020/01/26 Javascript
Python使用Dijkstra算法实现求解图中最短路径距离问题详解
2018/05/16 Python
tensorflow实现图像的裁剪和填充方法
2018/07/27 Python
Python数据分析matplotlib设置多个子图的间距方法
2018/08/03 Python
python 通过类中一个方法获取另一个方法变量的实例
2019/01/22 Python
正则给header的冒号两边参数添加单引号(Python请求用)
2019/08/09 Python
Python 多线程其他属性以及继承Thread类详解
2019/08/28 Python
python 实现在shell窗口中编写print不向屏幕输出
2020/02/19 Python
python GUI框架pyqt5 对图片进行流式布局的方法(瀑布流flowlayout)
2020/03/12 Python
整理HTML5的一些新特性与Canvas的常用属性
2016/01/29 HTML / CSS
英国虚拟主机服务商:eUKhost
2016/08/16 全球购物
JD Sports瑞典:英国领先的运动时尚商店
2018/01/28 全球购物
TCP/IP中的TCP和IP分别承担什么责任
2012/04/21 面试题
工商管理实习自我鉴定
2013/09/28 职场文书
市场营销调查计划书
2014/05/02 职场文书
法英专业大学生职业生涯规划书范文
2014/09/22 职场文书
单位未婚证明范本
2014/11/25 职场文书
golang 语言中错误处理机制
2021/08/30 Golang
MySQL数据库配置信息查看与修改方法详解
2022/06/25 MySQL
Go语言测试库testify使用学习
2022/07/23 Golang