📜  OpenCV中的直方图均衡

📅  最后修改于: 2022-05-13 01:55:35.874000             🧑  作者: Mango

OpenCV中的直方图均衡

先决条件:分析图像使用直方图

直方图均衡化是图像处理中使用图像的直方图进行对比度调整的一种方法。

这种方法通常会增加许多图像的全局对比度,尤其是当图像的可用数据由接近的对比度值表示时。通过这种调整,强度可以更好地分布在直方图上。这允许较低局部对比度的区域获得较高的对比度。直方图均衡通过有效地分散最频繁的强度值来实现这一点。该方法在背景和前景都亮或暗的图像中很有用。

OpenCV 有一个函数可以做到这一点, cv2.equalizeHist() 。它的输入只是灰度图像,输出是我们的直方图均衡图像。

输入图像:

下面是实现直方图均衡的 Python3 代码:

# import Opencv
import cv2
  
# import Numpy
import numpy as np
  
# read a image using imread
img = cv2.imread(\'F:\\do_nawab.png\', 0)
  
# creating a Histograms Equalization
# of a image using cv2.equalizeHist()
equ = cv2.equalizeHist(img)
  
# stacking images side-by-side
res = np.hstack((img, equ))
  
# show image input vs output
cv2.imshow(\'image\', res)
  
cv2.waitKey(0)
cv2.destroyAllWindows()


输出 :