使用 Python OpenCv 模块进行直方图均衡化
这是一种使用图像直方图进行对比度调整的图像处理方法。
实际上,此方法通常会增加许多图像的全局对比度,尤其是在图像的可用数据由接近的对比度值表示时,并且通过此调整,强度可以在直方图上得到更好的分布,并且它允许较低局部对比度的区域获得更高的对比度。
OpenCV 有一个函数可以执行此操作,cv2.equalizeHist(),其输入只是灰度图像,输出是直方图均衡的图像。
当图像的直方图局限于特定区域时,此技术很不错,在强度变化很大并且直方图覆盖了大区域的地方,它不起作用,即同时存在明亮像素和暗像素。
输入

示例代码
import cv2
# import Numpy
import numpy as np
# reading an image using imreadmethod
my_img = cv2.imread('C:/Users/TP/Pictures/west bengal/bishnupur/pp.jpg', 0)
equ = cv2.equalizeHist(my_img)
# stacking both the images side-by-side orientation
res = np.hstack((my_img, equ))
# showing image input vs output
cv2.imshow('image', res)
cv2.waitKey(0)
cv2.destroyAllWindows()
输出

广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP