python实现提取彩色图像HSI分量并进行直方图均衡化
时间: 2023-07-30 20:10:07 浏览: 277
彩色图像直方图均衡化
4星 · 用户满意度95%
下面是一个简单的 Python 代码示例,用于提取彩色图像的 HSI 分量并进行直方图均衡化:
```python
import cv2
import numpy as np
# 读取彩色图像
img = cv2.imread('color_image.jpg')
# 转换为 HSI 颜色空间
hsi = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)
# 提取亮度分量
intensity = hsi[:, :, 2]
# 进行直方图均衡化
intensity_eq = cv2.equalizeHist(intensity)
# 将直方图均衡化后的亮度分量替换回原图
hsi[:, :, 2] = intensity_eq
# 转换回 BGR 颜色空间
result = cv2.cvtColor(hsi, cv2.COLOR_HSV2BGR)
# 显示结果图像
cv2.imshow('Original Image', img)
cv2.imshow('Equalized Image', result)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
在上面的代码中,我们首先使用 OpenCV 的 `cv2.imread` 函数读取一张彩色图像,然后将其转换为 HSI 颜色空间,提取出亮度分量,并进行直方图均衡化。最后,我们将直方图均衡化后的亮度分量替换回原图,并将结果图像转换回 BGR 颜色空间。最后,我们使用 `cv2.imshow` 函数显示原始图像和直方图均衡化后的图像。
阅读全文