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

 更新时间:2020年10月27日 10:30:22   作者:RamboBai  
这篇文章主要介绍了python 如何对一幅灰度图像进行直方图均衡化,帮助大家更好的利用python处理图像,感兴趣的朋友可以了解下
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:原图的灰度图

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

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

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

图5:灰度变换函数

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

相关文章

  • opencv实现图像平移效果

    opencv实现图像平移效果

    这篇文章主要为大家详细介绍了opencv实现图像平移效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-03-03
  • python中的decode()与encode()深入理解

    python中的decode()与encode()深入理解

    这篇文章主要介绍了python中的decode()与encode()函数详解,本文通过实例代码给大家讲解的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-12-12
  • Python Web框架之Django框架文件上传功能详解

    Python Web框架之Django框架文件上传功能详解

    这篇文章主要介绍了Python Web框架之Django框架文件上传功能,结合实例形式详细分析了Django框架form表单基于ajax的文件上传功能详细操作技巧,需要的朋友可以参考下
    2019-08-08
  • pygame游戏之旅 如何制作游戏障碍

    pygame游戏之旅 如何制作游戏障碍

    这篇文章主要为大家详细介绍了pygame游戏之旅的第6篇,教大家如何制作游戏障碍,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-11-11
  • python if三元表达式实例用法详解

    python if三元表达式实例用法详解

    在本篇文章里小编给大家整理的是一篇关于python if三元表达式实例用法详解内容,有兴趣的朋友们可以学习下。
    2021-04-04
  • Django 解决阿里云部署同步数据库报错的问题

    Django 解决阿里云部署同步数据库报错的问题

    这篇文章主要介绍了Django 解决阿里云部署同步数据库报错的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-05-05
  • 用C++封装MySQL的API的教程

    用C++封装MySQL的API的教程

    这篇文章主要介绍了用C++封装MySQL的API的教程,包括对语句拼装器SQLJoin的介绍,需要的朋友可以参考下
    2015-05-05
  • Python调整图像hue值结合ImageEnhance库以实现色调增强

    Python调整图像hue值结合ImageEnhance库以实现色调增强

    这篇文章主要介绍了Python调整图像hue值结合ImageEnhance库以实现色调增强,PIL库中的ImageEnhance类可用于图像增强,可以调节图像的亮度、对比度、色度和锐度,通过RGB到HSV的变换加调整可以对图像的色调进行调整,需要的朋友可以参考下
    2023-09-09
  • Python解决两个整数相除只得到整数部分的实例

    Python解决两个整数相除只得到整数部分的实例

    今天小编就为大家分享一篇Python解决两个整数相除只得到整数部分的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-11-11
  • jupyter notebook中图片显示不出来的解决

    jupyter notebook中图片显示不出来的解决

    这篇文章主要介绍了jupyter notebook中图片显示不出来的解决操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03

最新评论