利用OpenCV 的白平衡技术,进行图像修复。
新建项目Test,并引用EmguCV,选择项目右键管理NuGet程序包,输入EmguCV,点击安装,即可,下面添加一个方法
/// <summary>
/// 利用OpenCV的EmguCVXPhotoWhiteBalancer白平衡技术,进行图像修复
/// </summary>
public static void TestEmguCVXPhotoWhiteBalancer()
{
Console.WriteLine($"---利用OpenCV的白平衡技术,进行图像修复---");
//Mat mat = CvInvoke.Imread("123.jpg"/*, ImreadModes.Color*/);//读取图像文件
Mat mat = CvInvoke.Imread(@"C:\Users\Administrator\Desktop\1234.png", LoadImageType.Color);//读取图像文件
Emgu.CV.XPhoto.XPhotoInvoke.BalanceWhite(mat, mat,WhiteBalanceMethod.Simple);//白平衡处理
//Emgu.CV.XPhoto.WhiteBalancer gwb = new Emgu.CV.XPhoto.SimpleWB();//实例化对象
//gwb.BalanceWhite(mat, mat);//白平衡处理
Bitmap bmp = mat.Bitmap;//处理的结果
bmp.Save(@"C:\Users\Administrator\Desktop\1234WhiteBalancer.jpg");//保存
Console.WriteLine($"---利用OpenCV的白平衡技术,进行图像修复---修复完成");
}
主程序代码如下,运行
static void Main(string[] args)
{
TestEmguCVXPhotoWhiteBalancer();
Console.Read();
}