.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);

 }
相关推荐
heimeiyingwang4 分钟前
AI 赋能企业业务:从降本增效到业务创新
人工智能
阿林来了13 分钟前
Flutter三方库适配OpenHarmony【flutter_speech】— 语音识别监听器实现
人工智能·flutter·语音识别·harmonyos
教男朋友学大模型17 分钟前
LoRA 为什么必须把一个矩阵初始化为0
人工智能·算法·面试·求职招聘
小鸡吃米…17 分钟前
TensorFlow—— 卷积神经网络(CNN)与循环神经网络(RNN)的区别
人工智能·tensorflow
智能交通技术20 分钟前
iTSTech:从AGI到AMI——自动驾驶的新方向 2026
人工智能·机器学习·自动驾驶·agi
小lo想吃棒棒糖21 分钟前
思路启发:基于预测编码的Transformer无反向传播训练:局部收敛性与全局最优性分析:
人工智能·深度学习·transformer
来两个炸鸡腿22 分钟前
【Datawhale组队学习202602】Hello-Agents task04智能体经典范式构建
人工智能·学习·大模型·智能体
2501_9269783325 分钟前
重整化群理论:从基础到前沿应用的综述(公式版)---AGI理论系统基础2.2
人工智能·经验分享·深度学习·机器学习·agi
乾元29 分钟前
数据投毒:如何通过训练数据污染埋下“后门”
运维·人工智能·网络协议·安全·网络安全·系统架构·自动化
KG_LLM图谱增强大模型31 分钟前
未来属于Agentic AI:释放人工智能在药企医学洞察中的潜力
人工智能