如何使用CV2让图片锐化和消除曝光和欠曝
时间: 2023-08-10 17:09:08 浏览: 149
VC图像处理锐化
要让图片锐化,可以使用cv2.filter2D()函数,该函数可以使用自定义核来进行卷积操作。以下是使用cv2.filter2D()函数进行锐化的示例代码:
```python
import cv2
import numpy as np
# 读取图片
img = cv2.imread("example.jpg")
# 定义锐化核
kernel = np.array([[0, -1, 0], [-1, 5, -1], [0, -1, 0]])
# 使用cv2.filter2D函数进行卷积操作
sharpened = cv2.filter2D(img, -1, kernel)
# 显示锐化后的图片
cv2.imshow("Sharpened Image", sharpened)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
要消除曝光和欠曝,可以使用cv2.equalizeHist()函数来进行直方图均衡化。该函数可以将图片的像素值分布变得更加平均,从而提高图片的对比度和亮度。以下是使用cv2.equalizeHist()函数进行直方图均衡化的示例代码:
```python
import cv2
# 读取图片
img = cv2.imread("example.jpg")
# 将图片转换为灰度图像
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
# 进行直方图均衡化
equalized = cv2.equalizeHist(gray)
# 显示直方图均衡化后的图片
cv2.imshow("Equalized Image", equalized)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
需要注意的是,直方图均衡化可能会导致图片的颜色失真和噪声增加,因此需要根据具体情况进行调整。
阅读全文