OpenCV中可以使用以下几种方法来调整图像的亮度:
- 直接修改像素值:对于每个像素,将其像素值乘以一个小于1的系数,例如0.5。这将使整个图像变暗。代码如下:
import cv2
# 读入图片
image = cv2.imread("image.jpg")
# 将图片的每个像素值乘以0.5
image = image * 0.5
# 保存图片
cv2.imwrite("dark_image.jpg", image)
- 使用cv2.addWeighted函数:这个函数可以将两个图像进行加权混合。可以将一张图片的权重设为0,另一张图片的权重设为1,这样就可以使用第一张图片来调整第二张图片的亮度。代码如下:
import cv2
# 读入图片
image = cv2.imread("image.jpg")
# 创建一张全黑图片,用于调整亮度
dark_image = np.zeros(image.shape, dtype=image.dtype)
# 将两张图片进行加权混合
image = cv2.addWeighted(dark_image, 0.5, image, 1.0, 0)
# 保存图片
cv2.imwrite("dark_image.jpg", image)
- 使用cv2.convertScaleAbs函数:这个函数可以对图像进行缩放和平移,从而调整图像的亮度。代码如下:
``` import cv2
读入图片
image = cv2.imread("image.jpg")