低照度图像恢复代码 python
时间: 2023-07-31 14:01:19 浏览: 117
低照度图像恢复是图像增强的一种方法,可以对于光线较弱的图像进行提亮和增强。下面是一个简单的低照度图像恢复的Python代码示例。
```python
import cv2
def enhance_low_light_image(image_path):
# 读取图像
img = cv2.imread(image_path)
# 将图像转换为浮点数类型
img_float = img.astype(float)
# 对图像进行归一化处理
img_normalized = cv2.normalize(img_float, None, 0.0, 1.0, cv2.NORM_MINMAX)
# 对图像进行亮度增强
enhanced_img = cv2.pow(img_normalized, 0.3)
# 将增强后的图像转换回整数类型
enhanced_img = (enhanced_img * 255).astype('uint8')
# 显示增强后的图像
cv2.imshow("Enhanced Image", enhanced_img)
cv2.waitKey(0)
cv2.destroyAllWindows()
# 调用函数进行低照度图像恢复
enhance_low_light_image("input_image.jpg")
```
以上代码通过使用OpenCV库,实现了对低照度图像的恢复。首先,读取图像,并将其转换为浮点数类型。接着,对图像进行归一化处理,将像素值映射到0到1之间的范围。然后,使用幂函数对图像进行亮度增强,这里使用的参数是0.3,可以根据实际情况进行调整。最后,将增强后的图像转换回整数类型,并显示出来。
需要注意的是,这只是一个简单的低照度图像恢复的例子,对于不同的图像和复杂的光线情况,可能需要更复杂的算法和处理步骤。
阅读全文