opencv中伽马校正如何编写代码
时间: 2024-09-25 09:04:10 浏览: 45
在OpenCV库中,伽马校正是为了纠正图像的亮度非线性分布,通常用于改善图像的视觉效果。以下是使用Python和OpenCV进行伽马校正的基本步骤:
```python
import cv2
import numpy as np
# 读取图片
image = cv2.imread('input_image.jpg')
# 定义伽马校正的系数(通常0.8 <= gamma <= 2.2)
gamma = 1.8
# 计算校正矩阵
invGamma = 1.0 / gamma
lookUpTable = (np.arange(256 dtype=np.float32)**invGamma).clip(0, 255).astype(np.uint8)
# 使用Look Up Table进行伽马校正
corrected_image = cv2.LUT(image, lookUpTable)
# 显示原图和校正后的图像
cv2.imshow("Original Image", image)
cv2.imshow("Gamma Corrected Image", corrected_image)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
在这个例子中,`cv2.LUT()`函数是用来创建查找表(LUT),然后将原始图像的每个像素值映射到新表中对应的位置,实现了伽马校正。
阅读全文