自动提高亮度 C# CV2
时间: 2023-07-12 13:06:14 浏览: 106
要使用C#和OpenCV(即CV2),可以按照以下步骤来自动提高图像的亮度:
1. 首先,您需要将图像加载到OpenCV中。
```csharp
Mat img = Cv2.ImRead("image.jpg", ImreadModes.Color);
```
2. 然后,您可以使用以下代码来自动增加图像的亮度。
```csharp
Mat imgBright = new Mat();
img.ConvertTo(imgBright, -1, 1.5, 0); // 调整亮度和对比度,这里将亮度增加 50%
```
在上面的代码中,我们使用`ConvertTo()`函数将原始图像转换为新图像,同时将亮度增加了50%。该函数的第二个参数是输出图像的数据类型,如果设置为-1,则输出图像与原始图像具有相同的数据类型。
3. 最后,您可以将输出图像保存到磁盘上。
```csharp
Cv2.ImWrite("output.jpg", imgBright);
```
完整的示例代码如下:
```csharp
using OpenCvSharp;
using System;
class Program
{
static void Main(string[] args)
{
Mat img = Cv2.ImRead("image.jpg", ImreadModes.Color);
Mat imgBright = new Mat();
img.ConvertTo(imgBright, -1, 1.5, 0);
Cv2.ImWrite("output.jpg", imgBright);
}
}
```
希望这可以帮助您自动提高图像亮度。
阅读全文