c++ opencv 调整曝光度
时间: 2023-09-10 17:08:27 浏览: 334
OpenCV实现绘制由摄像头采集视频的直方图(C++实现).zip
要调整图像的曝光度,可以使用 OpenCV 库中的 `convertTo` 函数。
这个函数可以将一个图像从一个数据类型转换为另一个数据类型,并且可以对像素值进行缩放、平移等操作。
下面是一个简单的示例代码,演示如何使用 `convertTo` 函数来调整图像的曝光度:
```cpp
#include <opencv2/opencv.hpp>
using namespace cv;
int main()
{
Mat img = imread("test.jpg");
// 调整曝光度
Mat result;
img.convertTo(result, -1, 2.0, 0);
imshow("Original Image", img);
imshow("Adjusted Image", result);
waitKey(0);
return 0;
}
```
在代码中,我们首先读取一张图片 `test.jpg`,然后使用 `convertTo` 函数将其转换为另一个 `Mat` 对象 `result`。
`convertTo` 函数的第一个参数是输出图像的变量名,第二个参数是输出图像的数据类型,如果设置为 -1,则表示输出图像与原始图像使用相同的数据类型。
第三个参数是像素值的缩放因子,这里我们将其设置为 2.0,表示将像素值乘以 2.0。
第四个参数是像素值的平移量,这里我们将其设置为 0,表示不进行平移。
最后,我们将原始图像和调整后的图像分别显示出来,以便比较它们之间的差异。
阅读全文