python图像处理:直方图均衡化
理论参考链接:【图像处理算法】直方图均衡化
算法实现
# 对单通道的处理函数
def channel_equalize(img):od = img.reshape(-1)# 对像素计数tmp = {}for num in od:tmp[num] = tmp.get(num, 0)+1tmp_list = list(tmp.items())tmp_list = sorted(tmp_list, key=lambda x:x[0], reverse=False)n = {}for data in tmp_list:n[data[0]] = data[1]# 像素分布频率for key, _ in n.items():n[key] /= len(od)# 像素累计分布频率pre = 0for key, _ in n.items():pre += n[key]n[key] = pre# 均衡化for key, _ in n.items():n[key] = int(n[key]*(len(n)-1)+1)for i in range(img.shape[0]):for j in range(img.shape[1]):img[i, j] = n[img[i, j]]return img
原图三通道的直方图
均衡化后三通道的直方图
原图和均衡化图对比
python图像处理:直方图均衡化相关推荐
- python批量直方图均衡化_直方图均衡化-Python实现
需要均衡的图像 将下面的图像进行直方图均衡 1 3 9 9 8 2 1 3 7 3 3 6 0 6 4 6 8 2 0 5 2 9 2 6 0 均衡化计算过程 使用python进行直方图均衡化: # ...
- Python OpenCV -- 直方图均衡化(十三)
直方图均衡化 直方图是图像中像素强度分布的图形表达方式.它统计了每一个强度值所具有的像素个数. 直方图均衡化是通过拉伸像素强度分布范围来增强图像对比度的一种方法. 通过上图可以看到像素主要集中在中间的 ...
- 【图像处理】——图像增强Python实现直方图均衡化
目录 一.相关概念 1.灰度直方图概念(hist) 2.灰度概率累积函数(cdf) 3.灰度直方图均衡化(equalizehist) 4.均衡化适用范围 二.均衡化的目的以及求解步骤 1.目的 2.求 ...
- [Opencv](python)直方图均衡化与直方图比较
1,直方图均衡化 (Histogram Equalization) 假如图像的灰度分布不均匀,其灰度分布集中在较窄的范围内,使图像的细节不够清晰,对比度较低.直方图均衡化,对图像进行非线性拉伸,重新分 ...
- [图像处理] 直方图均衡化原理 - 数学推导
直方图均衡化 效果 代码 import cv2 as cv import numpy as np import matplotlib.pyplot as pltsrc = cv.imread(&quo ...
- 图像处理-直方图均衡化
个人博客:http://www.chenjianqu.com/ 原文链接:http://www.chenjianqu.com/show-11.html 概念 在统计学中,直方图(英语:Histogra ...
- 详细解析图像处理 直方图均衡化计算
什么是直方图均衡化 看一个图了解一下什么是直方图均衡化: 第一个图灰度都集中在左边,整体图像较暗 第二个图灰度都集中在右边,整体图像较亮 第三个图灰度都集中在中间,整体图像适中,但是雾蒙蒙的并不清晰 ...
- python opencv 直方图均衡化_Python opencv—直方图/直方图均衡化/直方图比较,pythonopencv...
import cv2 as cv import numpy as np from matplotlib import pyplot as plt ''' def plot_demo(image): # ...
- 【python】直方图均衡化和自适应均衡化图像
1.代码 import cv2 import matplotlib.pyplot as pltimg=cv2.imread('./bike.jpg',0)#读取图片 #进行直方图均衡化 res=cv2 ...
- python+opencv直方图均衡化
前言 直方图均衡化的三种情况,分别是: - 灰度图像直方图均衡化 - 彩色图像直方图均衡化 - YUV 直方图均衡化 插入原图: 灰度图像直方图均衡化 对直方图均衡化主要使用opencv提供的一个eq ...
最新文章
- 北大数学天才柳智宇:为何放弃麻省理工奖学金,选择出家为僧?
- python中升序降序问题_飘逸的python - 有的升序有的降序的情况下怎么多条件排序...
- linux系统下的mysqlgt;aborted_MySQL令人头疼的Aborted告警案例分析
- OpenCV calcOpticalFlowPyrLK用法的实例(附完整代码)
- python批量打印机excel,python自动化办公系列03_单个以及批量处理excel文件
- Json扩展 (转)
- selenium处理动态加载数据
- 债市概览 | 一文梳理:债券发行、登记托管、交易与结算
- 监管科技崛起:从FinTech到RegTech
- 一个房间里有4个小孩,2个戴黑帽,2个戴白帽
- c盘满了一键检测,清理,瘦身!
- 不使用imrotate实现图像旋转(点操作实现)
- 漫话:什么是架构师?
- Word/excel/df文档转图片返回前端
- php页面跳底部,监控页面滑到底部加载事件的jq
- 外星人电脑装linux双系统,在外星人电脑上安装windows10和ubuntu16.04双系统小记
- struck.unpack
- 在Win7上安装TexLive及设置XeLaTeX的整个过程
- PyTorch中FLOPs计算问题
- 生产docker run 卡住没反应故障排查思路