opencv怎么调整图像的对比度
时间: 2023-09-24 14:14:17 浏览: 59
使用函数cv2.convertScaleAbs()可以调整图像的对比度。
示例代码:
```
import cv2
img = cv2.imread('image.jpg')
# 调整对比度
alpha = 1.5 # 对比度增强倍数
beta = 0 # 亮度不变
new_img = cv2.convertScaleAbs(img, alpha=alpha, beta=beta)
cv2.imshow('original image', img)
cv2.imshow('new image', new_img)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
在上述示例中,alpha参数控制对比度,beta参数控制亮度。将alpha设置为大于1的值可以增强对比度,将alpha设置为小于1的值可以降低对比度。设置beta参数可以调整亮度。
相关问题
opencv调整图像对比度的函数
OpenCV中可以使用cv::Mat::convertTo()函数来调整图像的对比度。具体的实现方式是将图像中的每个像素值乘以一个比例因子并加上一个偏移值。
以下是一个示例代码:
```
cv::Mat img = cv::imread("example.jpg");
double alpha = 1.5; // 对比度比例因子
int beta = 50; // 亮度偏移值
cv::Mat new_img;
img.convertTo(new_img, -1, alpha, beta);
cv::imshow("Original Image", img);
cv::imshow("New Image", new_img);
```
在上述代码中,我们首先读取了一张名为 "example.jpg" 的图像。然后,我们指定了一个对比度比例因子 alpha 和一个亮度偏移值 beta。接着,我们使用convertTo()函数将原始图像转换为新的图像,并将其存储在new_img中。最后,我们使用imshow()函数显示原始图像和新的图像。
希望这可以帮助到你。
opencv 提高图像对比度
要提高图像对比度,可以使用 OpenCV 的 equalizeHist 函数。该函数将直方图均衡化应用于灰度图像,从而增加图像的对比度。以下是一个示例代码:
```python
import cv2
# 读取图像
img = cv2.imread('image.jpg', 0)
# 应用直方图均衡化
img_eq = cv2.equalizeHist(img)
# 显示原始图像和增强后的图像
cv2.imshow('Original Image', img)
cv2.imshow('Enhanced Image', img_eq)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
在上面的代码中,cv2.imread 函数用于读取图像,第二个参数为 0 表示将图像读取为灰度图像。然后,将 img 传递给 equalizeHist 函数,生成一个增强后的图像 img_eq。最后,使用 cv2.imshow 函数显示原始图像和增强后的图像。