.Net OpenCVSharp生成灰度图和二值图

文章目录


前言

使用OpenCVSharp生成图片的灰度图和二值图

.Net 8.0版本,依赖OpenCvSharp4和OpenCvSharp4.runtime.win组件。

原图:


提示:以下是本篇文章正文内容,下面案例可供参考

一、灰度图

csharp 复制代码
 /// <summary>
 /// 灰度图
 /// </summary>
 public static void GrayscaleImage()
 {
     // 加载彩色图像
     Mat colorImage = Cv2.ImRead("C:\\xxx\\Image Test\\1.png");

     // 创建一个新的Mat对象来保存灰度图像
     Mat grayImage = new Mat();

     // 将彩色图像转换为灰度图像
     Cv2.CvtColor(colorImage, grayImage, ColorConversionCodes.BGR2GRAY);

     // 保存灰度图像到文件
     Cv2.ImWrite("path_to_save_gray_image.jpg", grayImage);

     // 释放资源
     colorImage.Dispose();
     grayImage.Dispose();
 }

二、二值图

csharp 复制代码
 /// <summary>
 /// 二值图
 /// </summary>
 public static void BinaryImage()
 {

     Mat src = Cv2.ImRead("C:\\xxx\\Image Test\\1.png", ImreadModes.Color);
     Mat grayImage = new Mat();

     // 将彩色图像转换为灰度图像
     Cv2.CvtColor(src, grayImage, ColorConversionCodes.BGR2GRAY);
     // 创建输出图像  
     Mat dst = new Mat();
     // 二值化,这里使用简单的阈值方法,你可以根据需要选择其他方法  
     Cv2.Threshold(grayImage, dst, 170, 255, ThresholdTypes.Binary);
     // 保存二值化后的图像  
     Cv2.ImWrite("output.jpg", dst);

 }
相关推荐
Kel12 分钟前
Claude Code 架构深度剖析:从终端输入到大模型响应的完整过程
人工智能·设计模式·架构
taWSw5OjU24 分钟前
从模型评估、梯度难题到科学初始化:一步步解析深度学习的训练问题
人工智能·深度学习
刘佬GEO25 分钟前
【无标题】
网络·人工智能·搜索引擎·ai·语言模型
用户20187928316732 分钟前
/export之一个程序员与AI的“破案笔记”
人工智能
Ricardo-Yang39 分钟前
SCNP语义分割边缘logits策略
数据结构·人工智能·python·深度学习·算法
新缸中之脑1 小时前
微调BERT进行命名实体识别
人工智能·深度学习·bert
用户2018792831671 小时前
故事:小白的“无限循环”噩梦与大师的 /loop 魔法
人工智能
段小二1 小时前
Token 费用失控、VIP 用户体验一样烂:Context Engineering 才是关键
人工智能·后端
用户2018792831671 小时前
/branch 你点了一份代码,Cli 帮你分成了两碗
人工智能
kishu_iOS&AI1 小时前
机器学习 —— 线性回归
人工智能·机器学习·线性回归