title: "Python实现图像直方图均衡化算法"
date: 2018-06-12T17:10:48+08:00
tags: [""]
categories: ["python"]


效果图

代码


#!/usr/bin/env python3
# coding=utf-8import matplotlib.image as mpimg
from matplotlib import pyplot as plt
import sys
import numpy as npdef equalization(gray_value):"""传入灰度值,对灰度值做均衡化,不需要返回,直接修改传入的参数:param gray_value:"""# 统计灰度直方图gray = np.zeros(256)row, column = gray_value.shapefor i in range(row):for j in range(column):gray[gray_value[i][j]] += 1# 计算灰度占比gray /= (row * column)# 显示灰度直方图plt.subplot(2, 2, 2)plt.plot(gray)cumsum = np.cumsum(gray)  # 计算累积和# 均衡化# equa_t[i]=j表示原灰度值i经过均衡化后转化为灰度值j# 255×累积和四舍五入为int型equa_t = np.array((255 * cumsum + 0.5)).astype(np.int32)# 统计均衡化后的灰度数量equa_gray = np.zeros(256)for i in range(256):equa_gray[equa_t[i]] += gray[i]# 显示均衡化后的直方图plt.subplot(2, 2, 4)plt.plot(equa_gray)# 对原灰度矩阵做均衡化for i in range(row):for j in range(column):gray_value[i][j] = equa_t[gray_value[i][j]]def run(img_path):img_array = mpimg.imread(img_path)plt.subplot(2, 2, 1)plt.imshow(img_array)img_array *= 255img_array = img_array.astype(np.int32)equalization(img_array[:, :, 0])equalization(img_array[:, :, 1])equalization(img_array[:, :, 2])img_array = img_array.astype(np.float64)img_array /= 255plt.subplot(2, 2, 3)plt.imshow(img_array)if __name__ == "__main__":if sys.argv.__len__() <= 1:png = input("请输入要处理的图片名:\n")else:png = sys.argv[1]run(png)plt.show()

转载于:https://www.cnblogs.com/lepeCoder/p/9174154.html

Python实现图像直方图均衡化算法相关推荐

  1. 图像直方图均衡化算法 python实现

    一. 直方图均衡化: 直方图均衡化是使图像直方图变得平坦的操作.直方图均衡化能够有效地解决图像整体过暗.过亮的问题,增加图像的清晰度. 具体流程如下所示.其中S是总的像素数,Zmax是像素的最大取值( ...

  2. python直方图均衡_Python实现图像直方图均衡化算法

    效果图 代码 #!/usr/bin/env python3 # coding=utf-8 import matplotlib.image as mpimg from matplotlib import ...

  3. Python,OpenCV直方图均衡化以提高图像对比度

    Python,OpenCV直方图均衡化以提高图像对比度 1. 效果图 2. 原理 2.1 直方图均衡化应用 2.2 直方图均衡化分类 3. 源代码 参考 这篇博客将介绍直方图均衡化(全局 & ...

  4. Python OpenCV学习笔记之:图像直方图均衡化

    # -*- coding: utf-8 -*- """ 图像直方图均衡化 """ import cv2 import numpy as np ...

  5. 不调用python函数实现直方图均衡化_直方图均衡化(HE)

    前面我们已经讲过图像的直方图,那图像的直方图均衡化又是干嘛的呢? 顾名思义:其实对直方图进行均衡化,哈哈感觉自己说的就是废话... 举个例子: import cv2 from matplotlib i ...

  6. Python+OpenCV:直方图均衡化(Histogram Equalization)

    Python+OpenCV:直方图均衡化(Histogram Equalization) ####################################################### ...

  7. Python实现图像直方图规定化(直方图匹配)-附完整代码

    以下内容需要直方图均衡化.规定化知识 均衡化:https://blog.csdn.net/macunshi/article/details/79815870 规定化:https://blog.csdn ...

  8. 直方图均衡化算法原理详解

    算法 经典算法 下面以一幅3*2像素的简单图片(图C)为例,来说明灰度直方图均衡化的算法. (图C) 图C的直方图: 注意看百分位(Percentile)这一项.一般软件的百分位是 当前色阶的像素数量 ...

  9. 红外图像直方图均衡化算法理解

    1.红外图像直方图均衡化背景与目的 红外相机探测器的输出模式有模拟量和数字量,模拟量输出的需要用ADC转换,因而红外相机输出的数据位数一般都在12位到16位,对应的灰度级基本在2^12~2^16级而人 ...

最新文章

  1. 分布式关系数据库在金融行业的创新实践
  2. Python爬虫入门并不难,就看你如何选择?
  3. 54include对象
  4. python使用virtualenv在本地新建虚拟环境
  5. 该如何清理手机的垃圾?
  6. macOS Big Sur无法识别USB外置驱动器怎么办
  7. UVa 674 - Coin Change
  8. 移动端 重定向 https 请求
  9. ai人工智能使用的软件_MachineRay:使用AI创造抽象艺术
  10. 十二个常见的Web安全漏洞总结及防范措施
  11. IT外包项目质量把控
  12. 如何在CAD中进行批量展点(平面和三维)
  13. 华为OD机试真题 Python 实现【模拟商场优惠打折II】【2023 Q1 | 100分】
  14. 都柏林大学圣三一学院计算机,2021年都柏林大学圣三一学院什么专业好?这些专业你选对了吗?...
  15. 太阳能热水器两芯液位温度检测
  16. c语言写台球游戏,OpenGL版 3D台球 (原创,Basic实现) 申精!
  17. 传智健康2.0-6-移动端开发-体检预约
  18. c语言自定义关键词,C语言关键字详解
  19. php案例:创建日期时间目录
  20. 曾航:2014年移动互联网流量趋势

热门文章

  1. js创建对象之原型模式2原型与in操作符
  2. IOS数据存储 —— 1 沙盒(数据存储目录)
  3. iPhone ARC 宏定义
  4. ICCV2021 | 南洋理工大学、港中大提出Talk-to-Edit,对话实现高细粒度人脸编辑
  5. 滴滴图像技术团队招聘计算机视觉工程师和专家
  6. OpenVINO+OpenCV 文本检测与识别
  7. 尺度不变网络提升人群计数性能(附Github地址)
  8. ECCV18|人脸对齐与跟踪如何克服遮挡、姿态变化带来的特征点跳变?
  9. spark写入oracle 优化,spark读写数据库大表分区性能优化
  10. python的课程ppt_第4课 初识Python复习课程.ppt