opencv 让图片明暗部分加深
时间: 2024-09-30 11:09:26 浏览: 45
在OpenCV库中,如果你想让图片的明暗部分(亮度对比度)加强,你可以通过调整图像的直方图均衡化(Histogram Equalization)或者自适应直方图均衡化(Adaptive Histogram Equalization)来实现。这两种方法都是常见的图像增强手段,它们能够增加图像的动态范围,使得原本较暗的部分变得更亮,而原本较亮的部分也更鲜明。
1. **直方图均衡化**:这是一种全局处理技术,它将整个图像的像素强度分布拉伸到0到255的范围内,使整体图像看起来更均匀、细节更丰富。
```python
import cv2
import numpy as np
# 加载图像
img = cv2.imread('image.jpg', cv2.IMREAD_GRAYSCALE)
# 对图像进行直方图均衡化
equ_img = cv2.equalizeHist(img)
cv2.imshow('Original Image', img)
cv2.imshow('Equalized Image', equ_img)
```
2. **自适应直方图均衡化**:这种方法针对局部区域而不是整个图像进行,可以更好地保留图像的边缘信息。例如,使用`cv2.createCLAHE()`函数:
```python
clahe = cv2.createCLAHE(clipLimit=2.0, tileGridSize=(8, 8))
img_adapt = clahe.apply(img)
cv2.imshow('Adaptive Equalized Image', img_adapt)
```
在这里,`clipLimit`用于设定像素值改变的最大幅度,`tileGridSize`决定了分割图像的块大小。
阅读全文