全局直方图均衡化主要分四个步骤:
- 计算图像的灰度直方图
- 计算灰度直方图的累加直方图
- 根据累加直方图和直方图均衡化原理得到输入灰度级和输出灰度级之间的映射关系
- 根据第三步得到的灰度级映射关系,循环得到输出图像的每一个像素的灰度级
自适应直方图均衡化则是将图像划分为不重叠的区域块,然后对每一个块分别进行直方图均衡化。
import cv2
import numpy as np
import sys
import matplotlib.pyplot as plt
import math
import zengqiang_huidu
#全局直方图均衡化与限制对比度自适应直方图均衡化
def equalHist(image):#全局直方图均衡化
#灰度图像矩阵的高、宽
rows,cols=image.shape
#第一步:计算灰度直方图
grayhist=zengqiang_huidu.calcGrayHist(image)
#第二步:计算累加灰度直方图
zeroCumuMoment=np.zeros([256],np.uint32)
for p in range(256):
if p==0:
zeroCumuMoment[p