python代码实现 图像的直方图均衡化
时间: 2023-07-23 14:05:58 浏览: 142
可以使用OpenCV库来实现图像的直方图均衡化。以下是一个示例代码:
```python
import cv2
def histogram_equalization(image):
# 将图像转换为灰度图
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
# 对灰度图进行直方图均衡化
equalized = cv2.equalizeHist(gray)
# 将均衡化后的图像转换回彩色图像
equalized_color = cv2.cvtColor(equalized, cv2.COLOR_GRAY2BGR)
return equalized_color
# 读取图像
image = cv2.imread("image.jpg")
# 进行直方图均衡化
equalized_image = histogram_equalization(image)
# 显示原始图像和均衡化后的图像
cv2.imshow("Original Image", image)
cv2.imshow("Equalized Image", equalized_image)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
在这个例子中,`histogram_equalization` 函数接受一个彩色图像作为输入,然后将其转换为灰度图像。接着,使用 `cv2.equalizeHist` 函数对灰度图像进行直方图均衡化。最后,将均衡化后的灰度图像转换回彩色图像,并返回结果。
你可以将需要进行直方图均衡化的图片替换为 `"image.jpg"`,然后运行代码来查看结果。
阅读全文